Skip to content

Instantly share code, notes, and snippets.

@mikolalysenko
Created August 21, 2013 06:48
Show Gist options
  • Save mikolalysenko/6291076 to your computer and use it in GitHub Desktop.
Save mikolalysenko/6291076 to your computer and use it in GitHub Desktop.
requirebin sketch
var shell = require("mesh-viewer")()
var mesh
shell.on("viewer-init", function() {
mesh = shell.createMesh(require("bunny"))
})
shell.on("gl-render", function() {
mesh.draw()
})
require=function(e,t,r){function n(r,o){if(!t[r]){if(!e[r]){var a="function"==typeof require&&require;if(!o&&a)return a(r,!0);if(i)return i(r,!0);throw Error("Cannot find module '"+r+"'")}var s=t[r]={exports:{}};e[r][0].call(s.exports,function(t){var i=e[r][1][t];return n(i?i:t)},s,s.exports)}return t[r].exports}for(var i="function"==typeof require&&require,o=0;r.length>o;o++)n(r[o]);return n}({bunny:[function(e,t){t.exports=e("v9btcc")},{}],v9btcc:[function(e,t,r){r.positions=[[1.301895,.122622,2.550061],[1.045326,.139058,2.835156],[.569251,.155925,2.805125],[.251886,.144145,2.82928],[.063033,.131726,3.01408],[-.277753,.135892,3.10716],[-.441048,.277064,2.594331],[-1.010956,.095285,2.668983],[-1.317639,.069897,2.325448],[-.751691,.264681,2.381496],[.684137,.31134,2.364574],[1.347931,.302882,2.201434],[-1.736903,.029894,1.724111],[-1.319986,.11998,.912925],[1.538077,.157372,.481711],[1.951975,.081742,1.1641],[1.834768,.095832,1.602682],[2.446122,.091817,1.37558],[2.617615,.078644,.742801],[-1.609748,.04973,-.238721],[-1.281973,.230984,-.180916],[-1.074501,.248204,.034007],[-1.201734,.058499,.402234],[-1.444454,.054783,.149579],[-4.694605,5.075882,1.043427],[-3.95963,7.767394,.758447],[-4.753339,5.339817,.665061],[-1.150325,9.133327,-.368552],[-4.316107,2.893611,.44399],[-.809202,9.312575,-.466061],[.085626,5.963693,1.685666],[-1.314853,9.00142,-.1339],[-4.364182,3.072556,1.436712],[-2.022074,7.323396,.678657],[1.990887,6.13023,.479643],[-3.295525,7.878917,1.409353],[.571308,6.197569,.670657],[.89661,6.20018,.337056],[.331851,6.162372,1.186371],[-4.840066,5.599874,2.296069],[2.138989,6.031291,.228335],[.678923,6.026173,1.894052],[-.781682,5.601573,1.836738],[1.181315,6.239007,.393293],[-3.606308,7.376476,2.661452],[-.579059,4.042511,-1.540883],[-3.064069,8.630253,-2.597539],[-2.157271,6.837012,.300191],[-2.966013,7.821581,-1.13697],[-2.34426,8.122965,.409043],[-.951684,5.874251,1.415119],[-2.834853,7.748319,.182406],[-3.242493,7.820096,.373674],[-.208532,5.992846,1.252084],[-3.048085,8.431527,-2.129795],[1.413245,5.806324,2.243906],[-.051222,6.064901,.696093],[-4.204306,2.700062,.713875],[-4.610997,6.343405,.344272],[-3.291336,9.30531,-3.340445],[-3.27211,7.559239,-2.324016],[-4.23882,6.498344,3.18452],[-3.945317,6.377804,3.38625],[-4.906378,5.472265,1.315193],[-3.580131,7.846717,.709666],[-1.995504,6.645459,.688487],[-2.595651,7.86054,.793351],[-.008849,.305871,.184484],[-.029011,.314116,-.257312],[-2.522424,7.565392,1.804212],[-1.022993,8.650826,-.855609],[-3.831265,6.595426,3.266783],[-4.042525,6.855724,3.060663],[-4.17126,7.404742,2.391387],[3.904526,3.767693,.092179],[.268076,6.086802,1.469223],[-3.320456,8.753222,-2.08969],[1.203048,6.26925,.612407],[-4.406479,2.985974,.853691],[-3.226889,6.615215,-.404243],[.346326,1.60211,3.509858],[-3.955476,7.253323,2.722392],[-1.23204,.068935,1.68794],[.625436,6.196455,1.333156],[4.469132,2.165298,1.70525],[.950053,6.262899,.922441],[-2.980404,5.25474,-.663155],[-4.859043,6.28741,1.537081],[-3.077453,4.641475,-.892167],[-.44002,8.222503,-.771454],[-4.034112,7.639786,.389935],[-3.696045,6.242042,3.394679],[-1.221806,7.783617,.196451],[.71461,6.149895,1.656636],[-4.713539,6.163154,.495369],[-1.509869,.913044,-.832413],[-1.547249,2.066753,-.852669],[-3.757734,5.793742,3.455794],[-.831911,.199296,1.718536],[-3.062763,7.52718,-1.550559],[.938688,6.103354,1.820958],[-4.037033,2.412311,.988026],[-4.130746,2.571806,1.101689],[-.693664,9.174283,-.952323],[-1.286742,1.079679,-.751219],[1.543185,1.408925,3.483132],[1.535973,2.047979,3.655029],[.93844,5.84101,2.195219],[-.684401,5.918492,1.20109],[1.28844,2.008676,3.710781],[-3.586722,7.435506,-1.454737],[-.129975,4.384192,2.930593],[-1.030531,.281374,3.214273],[-3.058751,8.137238,-3.227714],[3.649524,4.592226,1.340021],[-3.354828,7.322425,-1.412086],[.936449,6.209237,1.512693],[-1.001832,3.590411,-1.545892],[-3.770486,4.593242,2.477056],[-.971925,.067797,.921384],[-4.639832,6.865407,2.311791],[-.441014,8.093595,-.595999],[-2.004852,6.37142,1.635383],[4.759591,1.92818,.328328],[3.748064,1.224074,2.140484],[-.703601,5.285476,2.251988],[.59532,6.21893,.981004],[.980799,6.257026,1.24223],[1.574697,6.204981,.381628],[1.149594,6.173608,1.660763],[-3.501963,5.895989,3.456576],[1.071122,5.424198,2.588717],[-.774693,8.473335,-.276957],[3.849959,4.15542,.396742],[-.801715,4.973149,-1.068582],[-2.927676,.625112,2.326393],[2.669682,4.045542,2.971184],[-4.391324,4.74086,.343463],[1.520129,6.270031,.775471],[1.837586,6.084731,.109188],[1.271475,5.975024,2.032355],[-3.487968,4.513249,2.605871],[-1.32234,1.517264,-.691879],[-1.080301,1.648226,-.805526],[-3.365703,6.910166,-.454902],[1.36034,.432238,3.075004],[-3.305013,5.774685,3.39142],[3.88432,.654141,.12574],[3.57254,.377934,.302501],[4.196136,.807999,.212229],[3.932997,.543123,.380579],[4.023704,3.286125,.537597],[1.864455,4.916544,2.691677],[-4.775427,6.499498,1.440153],[-3.464928,3.68234,2.766356],[3.648972,1.751262,2.157485],[1.179111,3.238846,3.774796],[-.171164,.299126,-.592669],[-4.502912,3.316656,.875188],[-.948454,9.214025,-.679508],[1.237665,6.288593,1.046],[1.523423,6.268963,1.139544],[1.436519,6.140608,1.739316],[3.723607,1.504355,2.136762],[2.009495,4.045514,3.22053],[-1.921944,7.249905,.213973],[1.254068,1.205518,3.474709],[-.317087,5.996269,.525872],[-2.996914,3.934607,2.900178],[-3.316873,4.028154,2.785696],[-3.400267,4.280157,2.689268],[-3.134842,4.564875,2.697192],[1.480563,4.692567,2.834068],[.873682,1.315452,3.541585],[1.599355,.91622,3.246769],[-3.292102,7.125914,2.768515],[3.74296,4.511299,.616539],[4.698935,1.55336,.26921],[-3.274387,3.299421,2.823946],[-2.88809,3.410699,2.955248],[1.171407,1.76905,3.688472],[1.430276,3.92483,3.473666],[3.916941,2.553308,.018941],[.701632,2.442372,3.778639],[1.562657,2.302778,3.660957],[4.476622,1.152407,.182131],[-.61136,5.761367,1.598838],[-3.102154,3.691687,2.903738],[1.816012,5.546167,2.380308],[3.853928,4.25066,.750017],[1.234681,3.581665,3.673723],[1.862271,1.361863,3.355209],[1.346844,4.146995,3.327877],[1.70672,4.080043,3.274307],[.897242,1.908983,3.6969],[-.587022,9.191132,-.565301],[-.217426,5.674606,2.019968],[.278925,6.120777,.485403],[1.463328,3.578742,-2.001464],[-3.072985,4.264581,2.789502],[3.62353,4.673843,.383452],[-3.053491,8.752377,-2.908434],[-2.628687,4.505072,2.755601],[.891047,5.113781,2.748272],[-2.923732,3.06515,2.866368],[.848008,4.754252,2.896972],[-3.319184,8.811641,-2.327412],[.12864,8.814781,-1.334456],[1.549501,4.549331,-1.28243],[1.647161,3.738973,3.507719],[1.250888,.945599,3.348739],[3.809662,4.038822,.053142],[1.483166,.673327,3.09156],[.829726,3.635921,3.713103],[1.352914,5.226651,2.668113],[2.237352,4.37414,3.016386],[4.507929,.889447,.744249],[4.57304,1.010981,.496588],[3.931422,1.720989,2.088175],[-.463177,5.989835,.834346],[-2.811236,3.745023,2.969587],[-2.805135,4.219721,2.841108],[-2.836842,4.802543,2.60826],[1.776716,2.084611,3.568638],[4.046881,1.463478,2.106273],[.316265,5.944313,1.892785],[-2.86347,2.776049,2.77242],[-2.673644,3.116508,2.907104],[-2.621149,4.018502,2.903409],[-2.573447,5.198013,2.477481],[1.104039,2.278985,3.722469],[-4.602743,4.306413,.902296],[-2.684878,1.510731,.535039],[.092036,8.473269,-.99413],[-1.280472,5.602393,1.928105],[-1.0279,4.121582,-1.403103],[-2.461081,3.304477,2.957317],[-2.375929,3.659383,2.953233],[1.417579,2.715389,3.718767],[.819727,2.948823,3.810639],[1.329962,.761779,3.203724],[1.73952,5.295229,2.537725],[.952523,3.945016,3.548229],[-2.569498,.633669,2.84818],[-2.276676,.757013,2.780717],[-2.013147,7.354429,-.003202],[.93143,1.565913,3.600325],[1.249014,1.550556,3.585842],[2.287252,4.072353,3.124544],[-4.7349,7.006244,1.690653],[-3.500602,8.80386,-2.009196],[-.582629,5.549138,2.000923],[-1.865297,6.356066,1.313593],[-3.212154,2.376143,-.565593],[2.092889,3.493536,-1.727931],[-2.528501,2.784531,2.833758],[-2.565697,4.893154,2.559605],[-2.153366,5.04584,2.465215],[1.631311,2.568241,3.681445],[2.150193,4.699227,2.807505],[.507599,5.01813,2.775892],[4.129862,1.863698,2.015101],[3.578279,4.50766,-.009598],[3.491023,4.806749,1.549265],[.619485,1.625336,3.605125],[1.107499,2.932557,3.790061],[-2.082292,6.99321,.742601],[4.839909,1.379279,.945274],[3.591328,4.322645,-.259497],[1.055245,.710686,3.16553],[-3.026494,7.842227,1.624553],[.146569,6.119214,.981673],[-2.043687,2.614509,2.785526],[-2.302242,3.047775,2.936355],[-2.245686,4.100424,2.87794],[2.116148,5.063507,2.572204],[-1.448406,7.64559,.251692],[2.550717,4.9268,2.517526],[-2.955456,7.80293,-1.782407],[1.882995,4.637167,2.895436],[-2.014924,3.398262,2.954896],[-2.273654,4.771227,2.611418],[-2.162723,7.876761,.702473],[-.198659,5.823062,1.739272],[-1.280908,2.133189,-.921241],[2.039932,4.251568,3.136579],[1.477815,4.354333,3.108325],[.560504,3.744128,3.6913],[-2.234018,1.054373,2.352782],[-3.189156,7.686661,-2.514955],[-3.744736,7.69963,2.116973],[-2.283366,2.878365,2.87882],[-2.153786,4.457481,2.743529],[4.933978,1.677287,.713773],[3.502146,.535336,1.752511],[1.825169,4.419253,3.081198],[3.072331,.280979,.106534],[-.508381,1.220392,2.878049],[-3.138824,8.445394,-1.659711],[-2.056425,2.954815,2.897241],[-2.035343,5.398477,2.215842],[-3.239915,7.126798,-.712547],[-1.867923,7.989805,.526518],[1.23405,6.248973,1.387189],[-.216492,8.320933,-.862495],[-2.079659,3.755709,2.928563],[-1.78595,4.300374,2.805295],[-1.856589,5.10678,2.386572],[-1.714362,5.544778,2.004623],[1.722403,4.200291,-1.408161],[.195386,.086928,-1.318006],[1.393693,3.013404,3.710686],[-.415307,8.508471,-.996883],[-1.853777,.755635,2.757275],[-1.724057,3.64533,2.884251],[-1.884511,4.927802,2.530885],[-1.017174,7.783908,-.227078],[-1.7798,2.342513,2.741749],[-1.841329,3.943996,2.88436],[1.430388,5.468067,2.503467],[-2.030296,.940028,2.611088],[-1.677028,1.215666,2.607771],[-1.74092,2.832564,2.827295],[4.144673,.631374,.503358],[4.238811,.653992,.762436],[-1.847016,2.082815,2.642674],[4.045764,3.194073,.852117],[-1.563989,8.112739,.303102],[-1.781627,1.794836,2.602338],[-1.493749,2.533799,2.797251],[-1.934496,4.690689,2.658999],[-1.499174,5.777946,1.747498],[-2.387409,.851291,1.500524],[-1.872211,8.269987,.392533],[-4.647726,6.765771,.833653],[-3.157482,.341958,-.20671],[-1.725766,3.24703,2.883579],[-1.458199,4.079031,2.836325],[-1.621548,4.515869,2.719266],[-1.607292,4.918914,2.505881],[-1.494661,5.556239,1.991599],[-1.727269,7.423769,.012337],[-1.382497,1.161322,2.640222],[-1.52129,4.681714,2.615467],[-4.247127,2.792812,1.250843],[-1.576338,.742947,2.769799],[-1.499257,2.172763,2.743142],[-1.480392,3.103261,2.862262],[1.049137,2.625836,3.775384],[-1.368063,1.791587,2.695516],[-1.307839,2.344534,2.767575],[-1.336758,5.092221,2.355225],[-1.5617,5.301749,2.21625],[-1.483362,8.537704,.196752],[-1.517348,8.773614,.074053],[-1.474302,1.492731,2.641433],[2.48718,.644247,-.920226],[.818091,.422682,3.171218],[-3.623398,6.930094,3.033045],[1.676333,3.531039,3.591591],[1.199939,5.683873,2.365623],[-1.223851,8.841201,.025414],[-1.286307,3.847643,2.918044],[-1.25857,4.810831,2.543605],[2.603662,5.572146,1.991854],[.138984,5.779724,2.077834],[-1.267039,3.175169,2.890889],[-1.293616,3.454612,2.911774],[-2.60112,1.277184,.07724],[2.552779,3.649877,3.163643],[-1.038983,1.248011,2.605933],[-1.288709,4.390967,2.761214],[-1.034218,5.485963,2.011467],[-1.185576,1.464842,2.624335],[-1.045682,2.54896,2.761102],[4.259176,1.660627,2.018096],[-.961707,1.717183,2.598342],[-1.044603,3.147464,2.855335],[-.891998,4.685429,2.669696],[-1.027561,5.081672,2.377939],[4.386506,.832434,.510074],[-1.014225,9.064991,-.175352],[-1.218752,2.895443,2.823785],[-.972075,4.432669,2.788005],[-2.714986,.52425,1.509798],[-.699248,1.517219,2.645738],[-1.161581,2.078852,2.722795],[-.845249,3.286247,2.996471],[1.068329,4.443444,2.993863],[3.98132,3.715557,1.027775],[1.658097,3.982428,-1.651688],[-4.053701,2.449888,.734746],[-.910935,2.214149,2.702393],[.087824,3.96165,3.439344],[-.779714,3.724134,2.993429],[-1.051093,3.810797,2.941957],[-.644941,4.3859,2.870863],[-2.98403,8.666895,-3.691888],[-.754304,2.508325,2.812999],[-4.635524,3.662891,.913005],[-.983299,4.125978,2.915378],[4.916497,1.905209,.621315],[4.874983,1.728429,.468521],[2.33127,5.181957,2.441697],[-.653711,2.253387,2.7949],[-3.623744,8.978795,-2.46192],[-4.555927,6.160279,.215755],[-4.940628,5.806712,1.18383],[3.308506,2.40326,-.910776],[.58835,5.251928,-.992886],[2.152215,5.449733,2.331679],[-.712755,.766765,3.280375],[-.741771,1.9716,2.657235],[-4.828957,5.566946,2.635623],[-3.474788,8.696771,-1.776121],[1.770417,6.205561,1.331627],[-.620626,4.064721,2.968972],[-1.499187,2.307735,-.978901],[4.098793,2.330245,1.667951],[1.940444,6.167057,.935904],[-2.314436,1.104995,1.681277],[-2.733629,7.742793,1.7705],[-.452248,4.719868,2.740834],[-.649143,4.951713,2.541296],[-.479417,9.43959,-.676324],[-2.251853,6.559275,.046819],[.033531,8.316907,-.789939],[-.513125,.995673,3.125462],[-2.637602,1.039747,.602434],[1.527513,6.230089,1.430903],[4.036124,2.609846,1.506498],[-3.559828,7.877892,1.228076],[-4.570736,4.960193,.838201],[-.432121,5.157731,2.467518],[-1.206735,4.562511,-1.237054],[-.823768,3.788746,-1.567481],[-3.095544,7.353613,-1.024577],[-4.056088,7.631119,2.062001],[-.289385,5.382261,2.329421],[1.69752,6.136483,1.667037],[-.168758,5.061138,2.617453],[2.853576,1.605528,-1.229958],[-4.514319,6.586675,.352756],[-2.558081,7.741151,1.29295],[1.61116,5.92358,2.071534],[3.936921,3.354857,.091755],[-.1633,1.119272,3.147975],[.067551,1.593475,3.38212],[-1.303239,2.328184,-1.011672],[-.438093,.73423,3.398384],[-4.62767,3.898187,.849573],[.286853,4.165281,3.284834],[-2.968052,8.492812,-3.493693],[-.111896,3.696111,3.53791],[-3.808245,8.451731,-1.574742],[.053416,5.558764,2.31107],[3.956269,3.012071,.11121],[-.710956,8.106561,-.665154],[.234725,2.717326,3.722379],[-.031594,2.76411,3.657347],[-.017371,4.700633,2.81911],[.215064,5.034859,2.721426],[-.111151,8.480333,-.649399],[3.97942,3.575478,.362219],[.392962,4.735392,2.874321],[4.17015,2.085087,1.865999],[.169054,1.244786,3.337709],[.020049,3.165818,3.721736],[.248212,3.595518,3.698376],[.130706,5.295541,2.540034],[-4.541357,4.798332,1.026866],[-1.277485,1.289518,-.667272],[3.892133,3.54263,-.078056],[4.057379,3.03669,.997913],[.287719,.884758,3.251787],[.535771,1.144701,3.400096],[.585303,1.399362,3.505353],[.191551,2.076246,3.549355],[.328656,2.394576,3.649623],[.413124,3.240728,3.771515],[.630361,4.501549,2.963623],[.529441,5.854392,2.120225],[3.805796,3.769958,-.162079],[3.447279,4.344846,-.467276],[.377618,5.551116,2.426017],[.409355,1.821269,3.606333],[.719959,2.194726,3.703851],[.495922,3.501519,3.755661],[.603408,5.354097,2.603088],[-4.605056,7.531978,1.19579],[.907972,.973128,3.356513],[.750134,3.356137,3.765847],[.4496,3.993244,3.504544],[-3.030738,7.48947,-1.259169],[.707505,5.602005,2.43476],[.668944,.654891,3.213797],[.593244,2.700978,3.791427],[1.467759,3.30327,3.71035],[3.316249,2.436388,2.581175],[3.26138,1.724425,2.539028],[-1.231292,7.968263,.281414],[-.108773,8.712307,-.790607],[4.445684,1.819442,1.896988],[1.998959,2.281499,3.49447],[2.162269,2.113817,3.365449],[4.363397,1.406731,1.922714],[4.808,2.225842,.611127],[2.735919,.771812,-.701142],[1.897735,2.878428,3.583482],[-3.31616,5.331985,3.212394],[-3.3314,6.018137,3.313018],[-3.503183,6.480103,3.222216],[-1.904453,5.750392,1.913324],[-1.339735,3.559592,-1.421817],[-1.044242,8.22539,.037414],[1.643492,3.110676,3.647424],[3.992832,3.686244,.710946],[1.774207,1.71842,3.475768],[-3.438842,5.5713,3.427818],[4.602447,1.2583,1.619528],[-.925516,7.930042,.072336],[-1.252093,3.846565,-1.420761],[-3.426857,5.072419,2.97806],[-3.160408,6.152629,3.061869],[3.739931,3.367082,2.041273],[1.027419,4.235891,3.251253],[4.777703,1.887452,1.560409],[-3.318528,6.733796,2.982968],[2.929265,4.962579,2.271079],[3.449761,2.838629,2.474576],[-3.280159,5.029875,2.787514],[4.068939,2.993629,.741567],[.303312,8.70927,-1.121972],[.229852,8.981322,-1.186075],[-.011045,9.148156,-1.047057],[-2.942683,5.579613,2.929297],[-3.145409,5.698727,3.205778],[-3.019089,6.30887,2.794323],[-3.217135,6.468191,2.970032],[-3.048298,6.993641,2.623378],[-3.07429,6.660982,2.702434],[3.612011,2.5574,2.25349],[2.54516,4.553967,2.75884],[-1.683759,7.400787,.250868],[-1.756066,7.463557,.448031],[-3.023761,5.149697,2.673539],[3.112376,2.677218,2.782378],[2.835327,4.581196,2.567146],[-2.973799,7.225458,2.506988],[-.591645,8.740662,-.505845],[3.782861,2.04337,2.03066],[3.331604,3.36343,2.605047],[2.966866,1.205497,2.537432],[.002669,9.654748,-1.355559],[2.632801,.58497,2.540311],[-2.819398,5.087372,2.521098],[2.616193,5.332961,2.194288],[-3.193973,4.925634,2.607924],[-3.12618,5.27524,2.944544],[-.426003,8.516354,-.501528],[2.802717,1.387643,2.751649],[-3.120597,7.889111,-2.75431],[2.636648,1.71702,2.991302],[-2.853151,6.711792,2.430276],[-2.843836,6.962865,2.400842],[1.9696,3.199023,3.504514],[-2.461751,.386352,3.008994],[1.64127,.495758,3.02958],[-4.330472,5.409831,.025287],[-2.912387,5.980416,2.844261],[-2.490069,.211078,2.985391],[3.581816,4.809118,.733728],[2.693199,2.647213,3.126709],[-.182964,8.184108,-.638459],[-2.226855,.444711,2.946552],[-.720175,8.115055,.017689],[2.645302,4.316212,2.850139],[-.232764,9.329503,-.918639],[4.852365,1.471901,.65275],[2.76229,2.014994,2.957755],[-2.808374,5.354301,2.644695],[-2.790967,6.406963,2.547985],[-1.342684,.418488,-1.669183],[2.690675,5.593587,-.041236],[4.660146,1.6318,1.713314],[2.775667,3.007229,3.111332],[-.396696,8.963432,-.706202],[2.446707,2.740617,3.321433],[-4.803209,5.884634,2.603672],[-2.652003,1.6541,1.5078],[3.932327,3.972874,.831924],[2.135906,.955587,2.986608],[2.486131,2.053802,3.124115],[-.386706,8.115753,-.37565],[-2.720727,7.325044,2.224878],[-1.396946,7.638016,-.16486],[-.62083,7.989771,-.144413],[-2.653272,5.729684,2.667679],[3.038188,4.65835,2.364142],[2.381721,.739472,2.788992],[-2.345829,5.474929,2.380633],[-2.518983,6.080562,2.479383],[-2.615793,6.839622,2.186116],[-2.286566,.143752,2.766848],[-4.771219,6.508766,1.070797],[3.717308,2.905019,2.097994],[2.50521,3.016743,3.295898],[2.208448,1.56029,3.216806],[3.346783,1.01254,2.119951],[2.653503,3.26122,3.175738],[-2.359636,5.827519,2.402297],[-1.952693,.558102,2.853307],[-.321562,9.414885,-1.187501],[3.138923,1.405072,2.520765],[1.493728,1.780051,3.621969],[3.01817,.907291,2.336909],[3.183548,1.185297,2.352175],[1.608619,5.006753,2.695131],[-4.723919,6.836107,1.095288],[-1.017586,8.865429,-.149328],[4.730762,1.214014,.64008],[-2.135182,6.647907,1.495471],[-2.420382,6.546114,2.108209],[-2.458053,7.186346,1.896623],[3.437124,.275798,1.138203],[.095925,8.725832,-.926481],[2.417376,2.429869,3.287659],[2.279951,1.200317,3.049994],[2.674753,2.326926,3.044059],[-2.328123,6.849164,1.75751],[-3.418616,7.853407,.126248],[-3.151587,7.77543,-.110889],[2.349144,5.653242,2.05869],[-2.273236,6.085631,2.242888],[-4.560601,4.525342,1.261241],[2.866334,3.796067,2.934717],[-2.17493,6.505518,1.791367],[3.12059,3.283157,2.818869],[3.037703,3.562356,2.866653],[.066233,9.488418,-1.248237],[2.749941,.975018,2.573371],[-2.155749,5.801033,2.204009],[-2.162778,6.261889,2.028596],[1.936874,.459142,2.956718],[3.176249,4.335541,2.440447],[4.356599,1.029423,1.700589],[3.873502,3.082678,1.80431],[2.895489,4.243034,2.735259],[-.095774,9.468195,-1.07451],[-1.124982,7.886808,-.480851],[3.032304,3.065454,2.897927],[3.692687,4.5961,.957858],[-3.013045,3.807235,-1.098381],[-.790012,8.92912,-.367572],[1.905793,.73179,2.996728],[3.530396,3.426233,2.356583],[2.12299,.624933,2.929167],[-2.069196,6.039284,2.01251],[-3.565623,7.182525,2.850039],[2.959264,2.376337,2.829242],[2.949071,1.822483,2.793933],[4.036142,.763803,1.703744],[-1.993527,6.180318,1.804936],[-.030987,.766389,3.344766],[-.549683,8.225193,-.189341],[-.765469,8.272246,-.127174],[-2.947047,7.541648,-.414113],[-3.050327,9.10114,-3.435619],[3.488566,2.231807,2.399836],[3.352283,4.727851,1.946438],[4.741011,2.162773,1.499574],[-1.815093,6.072079,1.580722],[-3.720969,8.267927,-.984713],[1.932826,3.714052,3.427488],[3.323617,4.438961,2.20732],[.254111,9.26364,-1.373244],[-1.493384,7.868585,-.450051],[-.841901,.776135,-1.619467],[.243537,6.027668,.091687],[.303057,.313022,-.531105],[-.435273,.474098,3.481552],[2.121507,2.622389,3.486293],[1.96194,1.101753,3.159584],[3.937991,3.407551,1.551392],[.070906,.295753,1.377185],[-1.93588,7.631764,.651674],[-2.523531,.744818,-.30985],[2.891496,3.319875,2.983079],[4.781765,1.547061,1.523129],[-2.256064,7.571251,.973716],[3.244861,3.058249,2.724392],[-.145855,.437775,3.433662],[1.586296,5.658538,2.358487],[3.658336,3.774921,2.071837],[2.840463,4.817098,2.46376],[-1.219464,8.122542,-.672808],[-2.520906,2.664486,-1.034346],[-1.315417,8.471365,-.709557],[3.429165,3.74686,2.446169],[3.074579,3.840758,2.767409],[3.569443,3.166337,2.333647],[2.294337,3.280051,3.359346],[2.21816,3.66578,3.269222],[2.158662,4.151444,-1.357919],[1.13862,4.380986,-1.404565],[3.388382,2.749931,-.840949],[3.059892,5.084848,2.026066],[3.204739,2.075145,2.640706],[3.387065,1.42617,2.305275],[3.910398,2.670742,1.750179],[3.471512,1.945821,2.395881],[4.08082,1.070654,1.960171],[-1.057861,.133036,2.146707],[-.151749,5.53551,-.624323],[3.233099,4.003778,2.571172],[2.611726,5.319199,-.499388],[2.682909,1.094499,-1.206247],[-1.22823,7.656887,.041409],[-2.293247,7.259189,.013844],[.081315,.202174,3.286381],[-1.002038,5.794454,-.187194],[3.448856,4.08091,2.258325],[.287883,9.006888,-1.550641],[-3.851019,4.059839,-.646922],[3.610966,4.205438,1.913129],[2.239042,2.950872,3.449959],[.216305,.442843,3.328052],[1.87141,2.470745,3.574559],[3.811378,2.768718,-.228364],[2.511081,1.362724,2.969349],[-1.59813,7.866506,.440184],[-3.307975,2.851072,-.894978],[-.107011,8.90573,-.884399],[-3.855315,2.842597,-.434541],[2.517853,1.090768,2.799687],[3.791709,2.36685,2.002703],[4.06294,2.773922,.452723],[-2.973289,7.61703,-.623653],[-2.95509,8.924462,-3.446319],[2.861402,.562592,2.184397],[-1.109725,8.594206,-.076812],[-.725722,7.924485,-.381133],[-1.485587,1.329994,-.654405],[-4.342113,3.233735,1.752922],[-2.968049,7.955519,-2.09405],[-3.130948,.446196,.85287],[-4.958475,5.757329,1.447055],[-3.086547,7.615193,-1.953168],[-3.751923,5.412821,3.373373],[-4.599645,7.480953,1.677134],[1.133992,.274871,.032249],[-2.956512,8.126905,-1.785461],[-.960645,4.73065,-1.191786],[-2.871064,.875559,.424881],[-4.932114,5.99614,1.483845],[-2.981761,8.124612,-1.387276],[.362298,8.978545,-1.368024],[-4.408375,3.046271,.602373],[2.865841,2.322263,-1.344625],[-4.7848,5.620895,.594432],[-2.88322,.338931,1.67231],[-4.688101,6.772931,1.872318],[-4.903948,6.164698,1.27135],[2.85663,1.005647,-.906843],[2.691286,.209811,.050512],[-4.693636,6.477556,.665796],[-4.472331,6.861067,.477318],[.883065,.204907,3.073933],[-.995867,8.048729,-.653897],[-.794663,5.670397,-.390119],[3.313153,1.638006,-.722289],[-4.856459,5.394758,1.032591],[-3.005448,7.783023,-.819641],[3.11891,2.036974,-1.08689],[-2.364319,2.408419,2.63419],[-2.927132,8.75435,-3.537159],[-3.296222,7.964629,-3.134625],[-1.642041,4.13417,-1.301665],[2.030759,.176372,-1.030923],[-4.559069,3.751053,.548453],[3.438385,4.59454,-.243215],[-2.561769,7.93935,.177696],[2.990593,1.335314,-.943177],[1.2808,.276396,-.49072],[-.318889,.290684,.211143],[3.54614,3.342635,-.767878],[-3.073372,7.780018,-2.357807],[-4.455388,4.387245,.361038],[-4.659393,6.276064,2.767014],[.636799,4.482223,-1.426284],[-2.987681,8.072969,-2.45245],[-2.610445,.763554,1.792054],[3.358241,2.006707,-.802973],[-.498347,.251594,.962885],[3.1322,.683312,2.038777],[-4.389801,7.493776,.690247],[.431467,4.22119,-1.614215],[-4.376181,3.213141,.273255],[-4.872319,5.715645,.829714],[-4.826893,6.195334,.849912],[3.516562,2.23732,-.677597],[3.131656,1.698841,-.975761],[-4.754925,5.411666,1.989303],[-2.987299,7.320765,-.629479],[-3.757635,3.274862,-.744022],[3.487044,2.541999,-.699933],[-4.53274,4.649505,.77093],[-1.424192,.099423,2.633327],[3.090867,2.476975,-1.146957],[-2.713256,.815622,2.17311],[3.348121,3.254167,-.984896],[-3.031379,.16453,-.309937],[-.949757,4.518137,-1.309172],[-.889509,.095256,1.288803],[3.539594,1.966105,-.553965],[-4.60612,7.127749,.811958],[-2.332953,1.444713,1.624548],[3.136293,2.95805,-1.138272],[3.540808,3.069058,-.735285],[3.678852,2.362375,-.452543],[-4.648898,7.37438,.954791],[-.646871,.19037,3.344746],[2.2825,.29343,-.826273],[-4.422291,7.183959,.557517],[-4.694668,5.246103,2.541768],[-4.583691,4.145486,.600207],[-2.934854,7.912513,-1.539269],[-3.067861,7.817472,-.546501],[3.825095,3.229512,-.237547],[2.532494,.323059,2.387105],[-2.514583,.692857,1.23597],[-4.736805,7.214384,1.259421],[-2.98071,8.409903,-2.468199],[2.621468,1.385844,-1.406355],[3.811447,3.560855,1.847828],[3.432925,1.497205,-.489784],[3.746609,3.631538,-.39067],[3.594909,2.832257,-.576012],[-.404192,5.300188,-.856561],[-4.762996,6.483774,1.702648],[-4.756612,6.786223,1.43682],[-2.965309,8.437217,-2.785495],[2.863867,.74087,-.429684],[4.02503,2.968753,1.392419],[3.669036,1.833858,-.304971],[-2.888864,.720537,.778057],[-2.36982,.979443,1.054447],[-2.959259,8.222303,-2.659724],[-3.467825,7.545739,-2.333445],[2.153426,.446256,-1.20523],[-3.229807,9.189699,-3.596609],[-3.72486,8.773707,-2.046671],[3.687218,3.297751,-.523746],[1.381025,.08815,-1.185668],[-2.796828,7.205622,-.208783],[3.647194,4.066232,-.291507],[-4.578376,3.885556,1.52546],[-2.840262,.63094,1.89499],[-2.429514,.922118,1.820781],[-4.675079,6.573925,2.423363],[2.806207,4.320188,-1.027372],[-1.289608,.097241,1.321661],[-3.010731,8.141334,-2.866148],[3.202291,1.235617,-.549025],[4.094792,2.477519,.304581],[2.948403,.966873,-.664857],[-4.83297,5.920587,2.095461],[-2.169693,7.257277,.946184],[-1.335807,3.057597,-1.303166],[-1.037877,.64151,-1.685271],[2.627919,.089814,.439074],[3.815794,3.808102,1.730493],[-2.973455,8.433141,-3.08872],[-2.391558,7.331428,1.658264],[-4.333107,4.529978,1.850516],[-4.640293,3.767107,1.168841],[3.600716,4.46931,1.734024],[3.880803,1.730158,-.172736],[3.814183,4.262372,1.167042],[4.37325,.829542,1.413729],[2.490447,5.75111,.011492],[3.460003,4.962436,1.188971],[3.918419,3.814234,1.358271],[-.807595,8.840504,-.953711],[3.752855,4.20577,1.57177],[-2.991085,8.816501,-3.244595],[-2.333196,7.128889,1.551985],[3.977718,3.570941,1.25937],[4.360071,.755579,1.079916],[4.637579,1.027973,1.032567],[-2.317,7.421066,1.329589],[-1.013404,8.293662,-.7823],[4.548023,1.020644,1.420462],[4.763258,1.266798,1.296203],[4.896,2.073084,1.255213],[4.015005,3.325226,1.093879],[4.94885,1.860936,.894463],[-2.189645,6.954634,1.270077],[4.887442,1.720992,1.288526],[-3.184068,7.871802,.956189],[-1.274318,.839887,-1.224389],[-2.919521,7.84432,.541629],[-2.994586,7.766102,1.96867],[-3.417504,9.241714,-3.093201],[-3.174563,7.466456,2.473617],[-3.263067,9.069412,-3.003459],[-2.841592,.529833,2.693434],[-3.611069,9.158804,-2.829871],[-4.642828,5.927526,.320549],[-3.809308,9.051035,-2.692749],[-2.837582,7.487987,-.106206],[4.773025,2.330442,1.213899],[4.897435,2.209906,.966657],[-3.067637,8.164062,-1.12661],[-3.122129,8.08074,-.899194],[4.571019,2.358113,1.462054],[4.584884,2.454418,.709466],[-3.661093,7.146581,-.475948],[4.735131,2.415859,.933939],[4.207556,2.540018,1.218293],[-3.607595,7.89161,-.121172],[-1.527952,.775564,-1.061903],[4.53874,2.503273,1.099583],[-3.938837,7.587988,.082449],[-4.853582,6.152409,1.787943],[-4.752214,6.247234,2.296873],[4.602935,2.363955,.488901],[-1.81638,6.365879,.868272],[.595467,4.744074,-1.32483],[1.87635,3.511986,-1.842924],[4.330947,2.534326,.720503],[4.108736,2.750805,.904552],[-1.890939,8.492628,-.290768],[-3.504309,6.173058,-.422804],[-1.611992,6.196732,.648736],[-3.899149,7.826123,1.088845],[-3.078303,3.008813,-1.035784],[-2.798999,7.844899,1.340061],[-1.248839,5.959105,.041761],[.767779,4.337318,3.090817],[-3.831177,7.515605,2.432261],[-1.667528,6.156208,.365267],[-1.726078,6.237384,1.100059],[-3.972037,4.520832,-.370756],[-4.40449,7.636357,1.520425],[-1.34506,6.004054,1.293159],[-1.233556,6.049933,.500651],[-3.696869,7.79732,.37979],[-3.307798,8.949964,-2.698113],[-1.997295,6.615056,1.103691],[-3.219222,8.336394,-1.150614],[-3.452623,8.31866,-.9417],[-3.94641,2.990494,2.212592],[-3.250025,8.030414,-.596097],[-2.02375,1.571333,2.397939],[-3.190358,7.665013,2.268183],[-2.811918,7.618526,2.145587],[-1.005265,5.892303,.072158],[-.93721,5.974148,.906669],[-4.646072,7.492193,1.45312],[-.252931,1.797654,3.140638],[-1.076064,5.738433,1.695953],[-3.980534,7.744391,1.735791],[-.721187,5.939396,.526032],[-.42818,5.919755,.229001],[-1.43429,6.11622,.93863],[-.985638,5.939683,.290636],[-4.433836,7.461372,1.966437],[-3.696398,7.844859,1.547325],[-3.390772,7.820186,1.812204],[-2.916787,7.864019,.804341],[-3.715952,8.037269,-.591341],[-4.204634,7.72919,1.119866],[-4.592233,5.592883,.246264],[3.307299,5.061701,1.622917],[-3.515159,7.601467,2.368914],[-3.435742,8.533457,-1.37916],[-.269421,4.545635,-1.366445],[-2.542124,3.768736,-1.258512],[-3.034003,7.873773,1.256854],[-2.801399,7.856028,1.080137],[3.29354,5.220894,1.081767],[-2.35109,1.299486,1.01206],[-3.232213,7.768136,2.047563],[3.290415,5.217525,.68019],[-3.415109,7.731034,2.144326],[3.440357,4.962463,.373387],[3.147346,5.352121,1.386923],[2.847252,5.469051,1.831981],[3.137682,5.410222,1.050188],[3.102694,5.310456,1.676434],[-3.044601,.39515,1.994084],[2.903647,5.561338,1.518598],[-3.810148,8.093598,-.889131],[4.234835,.803054,1.593271],[3.240165,5.228747,.325955],[3.037452,5.509825,.817137],[2.635031,5.795187,1.439724],[3.071607,5.318303,.080142],[2.909167,5.611751,1.155874],[3.044889,5.465928,.486566],[2.502256,5.770673,1.740054],[-.067497,.086416,-1.190239],[2.33326,5.906051,.138295],[.65096,4.205423,3.308767],[-2.671137,7.936535,.432731],[2.14463,5.879214,1.866047],[-4.776469,5.890689,.561986],[2.72432,5.655145,.211951],[2.730488,5.751455,.695894],[2.572682,5.869295,1.152663],[1.906776,5.739123,2.196551],[2.344414,5.999961,.772922],[-3.377905,7.448708,-1.863251],[2.285149,5.968156,1.459258],[2.385989,5.928974,.3689],[2.192111,6.087516,.959901],[2.36372,6.001101,1.074346],[1.972022,6.079603,1.591175],[1.87615,5.976698,1.91554],[-3.824761,9.05372,-2.928615],[2.044704,6.129704,1.263111],[-2.583046,.849537,2.497344],[-.078825,2.342205,3.520322],[-.704686,.537165,3.397194],[-.257449,3.235334,3.647545],[-.332064,1.448284,3.022583],[-2.200146,.898284,-.447212],[-2.497508,1.745446,1.829167],[.30702,4.416315,2.978956],[-3.205197,3.479307,-1.040582],[.110069,9.347725,-1.563686],[-.82754,.883886,3.065838],[-2.017103,1.244785,2.42512],[-.421091,2.309929,3.153898],[-.491604,3.796072,3.16245],[2.786955,3.501241,-1.340214],[-3.229055,4.380713,-.899241],[3.730768,.76845,1.90312],[-.561079,2.652382,3.152463],[-3.461471,3.086496,2.662505],[-.661405,3.446009,3.179939],[-.915351,.636755,3.243708],[-2.992964,8.915628,-3.729833],[-.439627,3.502104,3.42665],[-1.154217,.883181,2.800835],[-1.736193,1.465474,2.595489],[-.423928,3.24435,3.548277],[-.511153,2.871046,3.379749],[-.675722,2.991756,3.143262],[-1.092602,.599103,3.090639],[-.89821,2.836952,2.840023],[-2.658412,.781376,.960575],[-2.271455,1.222857,1.330478],[-.877861,1.111222,2.72263],[-.306959,2.876987,3.556044],[-3.839274,7.84138,-.918404],[-.172094,4.083799,3.141708],[-1.548332,.2529,2.864655],[-.217353,4.873911,-1.223104],[-3.384242,3.181056,-.95579],[-2.731704,.382421,2.895502],[-1.285037,.551267,2.947675],[.077224,4.246579,3.066738],[-.479979,1.77955,2.860011],[-.716375,1.224694,2.666751],[-.54622,3.138255,3.393457],[-2.33413,1.821222,2.124883],[-.50653,2.037147,2.897465],[2.451291,1.211389,-1.466589],[-3.160047,2.894081,2.724286],[-4.137258,5.433431,3.21201],[.462896,.320456,-.174837],[-.37458,2.609447,3.379253],[-3.095244,.256205,2.196446],[-4.197985,5.732991,3.262924],[-.729747,.246036,.497036],[-2.356189,5.062,-.965619],[-1.609036,.25962,-1.487367],[-4.074381,6.074061,3.409459],[-3.619304,4.0022,2.65705],[-.543393,8.742896,-1.056622],[-4.30356,6.858934,2.879642],[-.716688,2.901831,-2.11202],[1.547362,.083189,1.138764],[-.250916,.275268,1.201344],[-3.778035,3.13624,2.466177],[-4.594316,5.771342,3.01694],[-3.717706,3.442887,2.603344],[-4.311163,5.224669,3.019373],[-.610389,2.095161,-1.923515],[-3.040086,6.196918,-.429149],[-3.802695,3.768247,2.545523],[-.159541,2.043362,3.328549],[-3.744329,4.31785,2.491889],[-3.047939,.214155,1.873639],[-4.41685,6.113058,3.166774],[-1.165133,.460692,-1.742134],[-1.371289,4.249996,-1.317935],[-3.447883,.3521,.466205],[-4.495555,6.465548,2.944147],[-3.455335,.171653,.390816],[-3.964028,4.017196,2.376009],[-1.323595,1.763126,-.750772],[-3.971142,5.277524,-.19496],[-3.222052,.237723,.872229],[-4.403784,3.89107,1.872077],[-3.333311,.342997,.661016],[-4.495871,4.29606,1.63608],[-3.636081,2.760711,2.361949],[-4.487235,3.559608,1.66737],[-4.719787,7.26888,1.658722],[-1.086143,9.035741,-.707144],[-2.339693,1.600485,-.404817],[-4.642011,7.123829,1.990987],[-1.498077,3.854035,-1.369787],[-4.188372,4.729363,2.02983],[-3.116344,5.882284,-.468884],[-4.305236,4.246417,1.976991],[-3.022509,.22819,1.065688],[-2.799916,.52022,1.128319],[-4.262823,3.534409,2.020383],[-4.221533,3.947676,2.11735],[-3.744353,4.391712,-.6193],[-1.272905,.156694,-1.741753],[-3.62491,2.669825,-.549664],[-4.180756,3.096179,1.987215],[-4.059276,4.305313,2.232924],[-2.812753,.183226,1.370267],[-4.032437,3.512234,2.309985],[-.03787,.28188,.530391],[-4.711562,5.468653,2.822838],[-4.500636,6.953314,2.564445],[-4.479433,7.216991,2.270682],[3.990562,.50522,.716309],[-2.512229,6.863447,-.100658],[-2.968058,6.956639,-.37061],[2.550375,3.142683,-1.54068],[-2.320059,3.521605,-1.279397],[-4.556319,6.64662,2.745363],[-4.281091,7.108116,2.667598],[-2.050095,8.411689,.121353],[-2.44854,1.135487,.851875],[3.121815,.699943,-.277167],[-4.69877,6.00376,2.843035],[-1.360599,8.824742,-.595597],[1.128437,.171611,.301691],[-4.360146,6.289423,.042233],[1.400795,4.088829,-1.620409],[-3.193462,8.460137,-3.559446],[-3.168771,8.878431,-3.635795],[-3.434275,9.304302,-3.460878],[-3.349993,8.808093,-3.38179],[-3.304823,8.323865,-3.325905],[-3.572607,9.308843,-3.207672],[-3.166393,8.201215,-3.43014],[-3.451638,9.05331,-3.351345],[-3.309591,8.549758,-3.375055],[-3.527992,8.793926,-3.100376],[-3.6287,8.981677,-3.076319],[-3.445505,8.001887,-2.8273],[-3.408011,8.221014,-3.039237],[-3.65928,8.740382,-2.808856],[-3.878019,8.797295,-2.462866],[-3.515132,8.232341,-2.747739],[-3.460331,8.51524,-3.06818],[-3.403703,7.658628,-2.648789],[-3.507113,8.00159,-2.582275],[-3.607373,8.174737,-2.401723],[-3.749043,8.378084,-2.226959],[-3.648514,8.502213,-2.6138],[-2.534199,.904753,2.021148],[1.4083,5.744252,-.571402],[-3.852536,8.571009,-2.352358],[2.868255,5.373126,-.163705],[2.224363,4.669891,-1.061586],[-4.528281,4.885838,1.340274],[1.30817,4.609629,-1.28762],[-4.519698,3.422501,1.354826],[-3.549955,7.783228,-2.332859],[1.12313,6.120856,.045115],[-3.620324,7.57716,-2.033423],[-.798833,2.624133,-1.992682],[-3.617587,7.783148,-2.051383],[-3.669293,8.103776,-2.10227],[-3.892417,8.667436,-2.167288],[-.537435,.285345,-.176267],[-.841522,3.299866,-1.887861],[-.761547,3.647082,-1.798953],[-3.661544,7.85708,-1.867924],[-3.886763,8.551783,-1.889171],[-.591244,1.549749,-1.714784],[-.775276,1.908218,-1.597609],[-.961458,2.573273,-1.695549],[-2.215672,1.335009,2.143031],[-4.622674,4.130242,1.220683],[1.07344,.290099,1.584734],[-.976906,2.92171,-1.76667],[-1.13696,3.194401,-1.513455],[-3.743262,7.99949,-1.629286],[-2.876359,4.900986,-.879556],[.550835,3.905557,-2.031372],[.777647,4.992314,-1.215703],[1.445881,4.266201,-1.414663],[1.274222,5.510543,-.824495],[-.864685,2.318581,-1.702389],[-.627458,3.820722,-1.743153],[-3.867699,8.30866,-1.850066],[1.635287,5.45587,-.83844],[-1.037876,2.538589,-1.513504],[-4.38993,4.73926,1.699639],[.048709,4.765232,-1.279506],[-.626548,1.339887,-1.595114],[-3.682827,7.643453,-1.723398],[-3.868783,8.180191,-1.511743],[-.76988,1.508373,-1.419599],[-1.138374,2.766765,-1.448163],[1.699883,5.780752,-.475361],[1.214305,.308517,1.866405],[-1.713642,.373461,-1.265204],[-1.582388,.58294,-1.267977],[-.879549,1.821581,-1.313787],[.519057,5.858757,-.381397],[-3.770989,2.449208,-.132655],[.087576,.156713,-1.53616],[-.942622,2.146534,-1.421494],[-1.026192,1.022164,-1.145423],[-.964079,1.645473,-1.067631],[-1.109128,2.458789,-1.29106],[-1.037478,.209489,-1.805424],[-3.724391,7.599686,-1.273458],[-3.787898,7.951792,-1.304794],[3.821677,2.165581,-.181535],[-2.39467,.304606,-.570375],[-2.352928,1.0439,2.079369],[-.288899,9.640684,-1.006079],[-3.472118,7.263001,-1.080326],[-1.240769,.972352,-.976446],[-1.845253,.356801,-.995574],[-2.32279,7.915361,-.057477],[-1.08092,2.179315,-1.168821],[4.598833,2.156768,.280264],[-4.725417,6.442373,2.056809],[-.490347,9.46429,-.981092],[-1.99652,.09737,-.765828],[-1.137793,1.888846,-.894165],[-.37247,4.29661,-1.465199],[-.184631,5.692946,-.421398],[-3.751694,7.742231,-1.086908],[-1.001416,1.298225,-.904674],[-3.536884,7.190777,-.788609],[-3.737597,7.511281,-.940052],[-1.766651,.669388,-.873054],[3.112245,3.474345,-1.129672],[-.175504,3.81298,-2.0479],[-3.766762,7.412514,-.681569],[-.63375,9.439424,-.785128],[-.518199,4.768982,-1.258625],[.790619,4.212759,-1.610218],[-3.761951,3.742528,-.756283],[.897483,5.679808,-.612423],[2.221126,4.427468,-1.252155],[-.728577,5.846457,.062702],[.194451,9.503908,-1.482461],[-.099243,9.385459,-1.39564],[.643185,3.636855,-2.180247],[.894522,5.900601,-.356935],[2.595516,4.75731,-.893245],[1.108497,3.936893,-1.905098],[1.989894,5.789726,-.343268],[-3.802345,7.655508,-.613817],[2.339353,4.96257,-.90308],[.12564,4.013324,-1.879236],[-4.078965,3.683254,-.445439],[2.092899,5.256128,-.831607],[.427571,.291769,1.272964],[2.335549,3.480056,-1.581949],[-.15687,.324827,-1.648922],[-.536522,5.760786,-.203535],[1.507082,.078251,-.923109],[-1.854742,.134826,2.698774],[-3.939827,3.168498,-.526144],[-3.98461,3.39869,-.533212],[-3.961738,4.217132,-.489147],[4.273789,2.181164,.153786],[-.470498,5.645664,-.439079],[-.414539,5.488017,-.673379],[-.097462,5.062739,-1.114863],[1.198092,5.882232,-.391699],[2.855834,5.085022,-.498678],[1.037998,4.129757,-1.701811],[1.728091,5.068444,-1.063761],[-3.832258,2.625141,-.311384],[-4.078526,3.070256,-.284362],[-4.080365,3.954243,-.440471],[-.152578,5.276267,-.929815],[-1.489635,8.928082,-.295891],[.759294,5.15585,-1.087374],[-4.000338,2.801647,-.235135],[-4.290801,3.823209,-.19374],[-4.221493,4.25618,-.189894],[-4.066195,4.71916,-.201724],[-.155386,4.076396,-1.662865],[3.054571,4.414305,-.825985],[-1.652919,8.726499,-.388504],[-3.042753,.560068,-.126425],[-2.434456,1.118088,-.213563],[-2.623502,1.845062,-.283697],[-4.233371,3.43941,-.202918],[2.726702,3.82071,-1.280097],[.184199,4.14639,-1.673653],[-1.289203,.624562,-1.560929],[-3.823676,7.382458,-.407223],[.476667,5.064419,-1.143742],[-3.873651,4.955112,-.269389],[1.349666,5.312227,-1.000274],[-2.043776,8.434488,-.108891],[-2.763964,.733395,-.129294],[-4.380505,3.664409,-.024546],[-.71211,5.341811,-.803281],[-3.960858,7.183112,-.118407],[-3.822277,7.712853,-.263221],[-2.346808,8.108588,.063244],[-1.841731,8.642999,-.142496],[-2.600055,.985604,-.043595],[-3.513057,2.213243,-.044151],[-3.963492,2.603055,-.080898],[-4.258066,3.14537,-.027046],[-4.261572,5.00334,.13004],[.795464,3.99873,-1.905688],[-3.300873,.384761,.013271],[-2.770244,.881942,.077313],[-3.456227,1.993871,.301054],[-4.441987,3.914144,.177867],[-4.367075,6.611414,.165312],[-3.201767,.576292,.105769],[-3.174354,.645009,.440373],[-2.996576,.74262,.161325],[-2.724979,1.656497,.092983],[-3.261757,2.017742,-.070763],[-4.280173,4.518235,-.002999],[-4.471073,5.945358,.05202],[-3.877137,2.40743,.274928],[-4.371219,4.252758,.078039],[-3.400914,.40983,.238599],[-4.44293,3.523242,.146339],[-4.574528,5.279761,.353923],[-4.226643,7.191282,.269256],[-4.16361,2.843204,.097727],[-4.528506,5.011661,.536625],[.35514,5.664802,-.572814],[2.508711,5.580976,-.266636],[2.556226,3.633779,-1.426362],[1.878456,4.533714,-1.223744],[2.460709,4.440241,-1.1395],[2.218589,5.514603,-.560066],[2.263712,5.737023,-.250694],[2.964981,3.814858,-1.139927],[.991384,5.304131,-.999867],[2.81187,4.547292,-.916025],[2.918089,4.768382,-.702808],[3.262403,4.414286,-.657935],[.652136,6.089113,.069089],[3.361389,3.5052,-.946123],[2.613042,5.037192,-.697153],[.094339,4.36858,-1.451238],[3.290862,4.155716,-.732318],[2.658063,4.073614,-1.217455],[3.260349,3.753257,-.946819],[1.124268,4.862463,-1.207855],[3.35158,4.899247,-.027586],[3.194057,4.691257,-.524566],[3.090119,5.116085,-.23255],[2.418965,3.811753,-1.419399],[2.191789,3.877038,-1.47023],[4.043166,2.034188,.015477],[-1.026966,.86766,-1.410912],[1.937563,3.860005,-1.617465],[2.98904,4.101806,-.998132],[-.142611,5.865305,-.100872],[3.972673,2.292069,.089463],[3.23349,3.959925,-.849829],[.16304,5.857276,-.216704],[4.122964,1.770061,-.114906],[2.099057,4.978374,-.98449],[3.502411,3.76181,-.667502],[2.079484,5.939614,-.036205],[-.084568,3.525193,-2.253506],[.423859,4.06095,-1.845327],[1.6013,6.006466,-.153429],[.271701,3.844964,-2.078748],[.273577,5.218904,-.994711],[-.410578,3.92165,-1.773635],[1.941954,5.60041,-.621569],[.100825,5.462131,-.774256],[-.53016,3.619892,-2.027451],[-.822371,5.517453,-.605747],[-2.474925,7.670892,-.020174],[4.01571,.830194,-.013793],[-.400092,5.094112,-1.041992],[-2.887284,5.581246,-.525324],[-1.559841,6.050972,.079301],[-.469317,3.291673,-2.235211],[.337397,3.467926,-2.295458],[-2.632074,5.573701,-.582717],[-.030318,6.011395,.276616],[-.934373,.388987,-1.780523],[-2.661263,5.844838,-.425966],[.549353,5.489646,-.807268],[-2.194355,6.197491,-.109322],[-2.289618,5.664813,-.581098],[1.583583,3.796366,-1.844498],[.855295,.215979,-1.425557],[-2.627569,5.300236,-.767174],[4.333347,2.384332,.399129],[-1.880401,5.583843,-.696561],[-2.172346,5.324859,-.846246],[-2.27058,5.906265,-.388373],[-1.960049,5.889346,-.397593],[.965756,3.67547,-2.105671],[-2.014066,6.431125,.287254],[-1.776173,5.287097,-.89091],[-2.025852,5.089562,-.980218],[-1.886418,6.108358,-667e-6],[-1.600803,5.785347,-.491069],[-1.66188,4.968053,-1.042535],[-1.600621,5.962818,-.188044],[-1.588831,5.615418,-.665456],[4.46901,1.880138,.057248],[-1.978845,.927399,-.554856],[-1.408074,5.325266,-.83967],[1.923123,4.843955,-1.101389],[-2.87378,.117106,-.412735],[-1.222193,5.62638,-.539981],[-2.632537,.166349,-.489218],[-1.370865,5.838832,-.341026],[-1.067742,5.448874,-.692701],[-1.073798,5.220878,-.908779],[-1.147562,4.950417,-1.079727],[-2.789115,4.531047,-1.042713],[-3.550826,4.170487,-.806058],[-3.331694,4.798177,-.69568],[-3.689404,4.688543,-.534317],[-3.511509,5.106246,-.483632],[1.796344,.076137,.080455],[-3.306354,5.473605,-.478764],[-2.692503,3.346604,-1.20959],[-3.963056,5.187462,3.113156],[-3.901231,6.391477,-.246984],[4.484234,1.518638,-.001617],[4.308829,1.657716,-.119275],[4.290045,1.339528,-.110626],[-3.514938,3.524974,-.909109],[-2.1943,2.12163,-.71966],[4.108206,1.091087,-.11416],[3.785312,1.392435,-.28588],[4.092886,1.480476,-.210655],[-2.965937,6.469006,-.379085],[-3.708581,2.962974,-.63979],[-3.297971,2.218917,-.299872],[3.806949,.804703,-.11438],[3.747957,1.059258,-.273069],[-3.101827,4.111444,-1.006255],[-1.536445,4.658913,-1.195049],[-3.549826,2.450555,-.375694],[-3.676495,2.108366,.534323],[-3.674738,5.925075,-.400011],[-2.250115,2.848335,-1.121174],[-3.698062,5.667567,-.381396],[3.468966,.734643,-.190624],[-3.97972,5.670078,-.26874],[-3.002087,4.337837,-1.033421],[-3.356392,2.608308,-.713323],[-1.833016,3.359983,-1.28775],[-1.989069,3.632416,-1.305607],[3.591254,.542371,.026146],[3.364927,1.082572,-.342613],[-3.393759,3.866801,-.937266],[-4.124865,5.549529,-.161729],[-4.423423,5.687223,103e-6],[-1.496881,2.601785,-1.114328],[-2.642297,6.496932,-.264175],[-3.684236,6.819423,-.320233],[-2.286996,3.167067,-1.246651],[-1.624896,8.44848,-.530014],[-3.666787,2.159266,.268149],[-2.402625,2.011243,-.56446],[-2.736166,2.259839,-.6943],[-2.168611,3.89078,-1.292206],[-2.065956,3.345708,-1.281346],[-2.778147,2.675605,-.995706],[-3.507431,4.513272,-.71829],[-2.301184,4.293911,-1.238182],[3.205808,.211078,.394349],[-2.129936,4.870577,-1.080781],[-2.287977,2.496593,-.934069],[-2.701833,2.931814,-1.114509],[3.294795,.50631,-.081062],[-2.552829,7.468771,-.021541],[3.06721,.944066,-.43074],[-2.86086,1.973622,-.303132],[-3.598818,5.419613,-.401645],[-1.524381,.080156,-1.61662],[-1.907291,2.646274,-1.039438],[2.950783,.407562,-.105407],[-1.663048,1.655038,-.689787],[-1.728102,1.110064,-.635963],[-2.085823,7.686296,-.159745],[2.883518,3.157009,-1.30858],[-2.724116,.417169,-.389719],[-1.788636,7.862672,-.346413],[-2.186418,1.249609,-.434583],[-3.092434,2.606657,-.860002],[-1.737314,3.874201,-1.330986],[2.564522,.422967,-.390903],[1.670782,3.538432,-1.924753],[-2.338131,4.02578,-1.286673],[-1.916516,4.054121,-1.301788],[2.87159,2.034949,-1.267139],[-1.931518,3.062883,-1.197227],[-.816602,.135682,3.104104],[.469392,.213916,-1.489608],[2.574055,1.950091,-1.514427],[2.733595,2.682546,-1.461213],[-1.915407,4.693647,-1.151721],[-3.412883,5.867094,-.450528],[2.28822,.120432,-.04102],[2.244477,.14424,-.376933],[-1.676198,3.570698,-1.328031],[-1.821193,4.366982,-1.266271],[-1.552208,8.099221,-.53262],[-1.727419,2.39097,-.989456],[-2.468226,4.711663,-1.069766],[-2.451669,6.113319,-.273788],[2.635447,2.295842,-1.518361],[-2.020809,8.150253,-.246714],[2.292455,.805596,-1.3042],[2.641556,1.65665,-1.466962],[2.409062,2.842538,-1.635025],[2.456682,1.459484,-1.57543],[-1.691047,3.173582,-1.247082],[-1.865642,1.957608,-.768683],[-3.401579,.20407,.100932],[2.301981,1.7102,-1.650461],[2.342929,2.611944,-1.690713],[-1.676111,2.923894,-1.17835],[-2.992039,3.547631,-1.118945],[-3.571677,6.504634,-.375455],[2.141764,1.460869,-1.702464],[-3.221958,5.146049,-.615632],[2.19238,2.949367,-1.747242],[2.320791,2.232971,-1.706842],[2.088678,2.585235,-1.813159],[-2.196404,.592218,-.569709],[-2.120811,1.836483,-.62338],[-1.949935,2.271249,-.874128],[2.235901,1.110183,-1.510719],[2.020157,3.241128,-1.803917],[2.054336,1.949394,-1.792332],[-3.094117,4.996595,-.740238],[2.038063,.635949,-1.402041],[1.980644,1.684408,-1.76778],[1.587432,3.306542,-1.991131],[1.935322,.976267,-1.602208],[1.922621,1.235522,-1.698813],[1.712495,1.911874,-1.903234],[1.912802,2.259273,-1.888698],[1.884367,.355453,-1.312633],[1.676427,.76283,-1.539455],[1.78453,2.83662,-1.943035],[1.697312,.120281,-1.150324],[1.648318,2.484973,-1.999505],[-4.051804,5.958472,-.231731],[-1.964823,1.464607,-.58115],[1.55996,2.183486,-1.971378],[1.628125,1.045912,-1.707832],[1.701684,1.540428,-1.827156],[1.567475,4.869481,-1.184665],[1.432492,.843779,-1.648083],[1.173837,2.978983,-2.156687],[1.235287,3.37975,-2.09515],[1.252589,1.525293,-1.949205],[1.159334,2.336379,-2.105361],[1.49061,2.695263,-2.083216],[-4.122486,6.782604,-.02545],[1.173388,.279193,-1.423418],[1.505684,.380815,-1.414395],[1.391423,1.343031,-1.843557],[1.263449,2.73225,-2.144961],[1.295858,.597122,-1.515628],[1.245851,3.729126,-1.993015],[-2.761439,6.23717,-.365856],[.978887,1.664888,-2.046633],[1.219542,.982729,-1.785486],[1.315915,1.91748,-2.02788],[-3.052746,2.127222,-.369082],[.977656,1.36223,-1.944119],[.936122,3.39447,-2.203007],[-2.740036,4.184702,-1.122849],[.853581,2.864694,-2.260847],[.719569,.818762,-1.763618],[.839115,1.159359,-1.907943],[.932069,1.94559,-2.117962],[.579321,3.326747,-2.299369],[.86324,.597822,-1.565106],[.574567,1.158452,-1.943123],[.525138,2.137252,-2.213867],[.779941,2.342019,-2.206157],[.915255,2.618102,-2.209041],[.526426,3.02241,-2.321826],[.495431,2.521396,-2.295905],[.80799,3.156817,-2.286432],[.273556,1.304936,-2.012509],[.664326,1.530024,-2.048722],[.219173,2.32907,-2.323212],[.405324,.695359,-1.704884],[.398827,.946649,-1.843899],[.345109,1.608829,-2.100174],[-2.356743,.062032,-.4947],[-3.001084,.27146,2.560034],[-2.064663,.303055,-.697324],[.221271,3.174023,-2.374399],[.195842,.437865,-1.621473],[-.385613,.297763,1.960096],[1.999609,.108928,-.79125],[.351698,9.227494,-1.57565],[.021477,2.191913,-2.309353],[.246381,2.836575,-2.356365],[1.543281,.237539,1.901906],[.031881,9.147022,-1.454203],[-.001881,1.648503,-2.108044],[.333423,1.907088,-2.204533],[.044063,2.634032,-2.368412],[-.028148,3.053684,-2.390082],[.02413,3.34297,-2.36544],[-.272645,9.02879,-1.238685],[-.006348,.832044,-1.758222],[-.321105,1.458754,-1.886313],[-.153948,8.618809,-1.105353],[-.409303,1.137783,-1.720556],[-.410054,1.742789,-1.957989],[-.287905,2.380404,-2.294509],[-.261375,2.646629,-2.356322],[-.221986,3.215303,-2.345844],[-.31608,.687581,-1.71901],[-.537705,.855802,-1.648585],[-.142834,1.193053,-1.87371],[-.24371,2.044435,-2.176958],[-.437999,2.959748,-2.299698],[-.78895,.176226,-1.729046],[-.608509,.546932,-1.734032],[-.693698,4.478782,-1.369372],[-.669153,8.469645,-.911149],[-.741857,1.082705,-1.458474],[-.554059,2.440325,-2.141785],[2.09261,.153182,2.57581],[1.792547,.111794,2.563777],[1.855787,.189541,2.835089],[1.492601,.232246,2.987681],[-.284918,.236687,3.429738],[2.604841,.11997,1.01506],[.331271,.168113,3.124031],[.280606,.308368,2.495937],[.544591,.325711,2.081274],[.193145,.19154,-.977556],[3.810099,.42324,1.032202],[3.54622,.379245,1.392814],[.61402,.276328,.849356],[-1.198628,.144953,2.911457],[4.17199,.68037,1.391526],[.88279,.321339,2.059129],[1.93035,.109992,2.054154],[1.620331,.121986,2.37203],[2.374812,.10921,1.734876],[-.031227,.294412,2.593687],[4.075018,.561914,1.038065],[-.570366,.126583,2.975558],[.950052,.318463,1.804012],[1.130034,.117125,.98385],[2.123049,.08946,1.665911],[2.087572,.068621,.335013],[2.927337,.167117,.289611],[.528876,.313434,3.205969],[1.174911,.162744,1.328262],[-4.88844,5.59535,1.661134],[-4.709607,5.165338,1.324082],[.871199,.277021,1.263831],[-3.910877,2.349318,1.272269],[1.56824,.118605,2.768112],[1.179176,.152617,-.858003],[1.634629,.247872,2.128625],[-4.627425,5.126935,1.617836],[3.845542,.54907,1.45601],[2.654006,.165508,1.637169],[-.678324,.26488,1.974741],[2.451139,.100377,.213768],[.633199,.286719,.403357],[-.533042,.2524,1.373267],[.99317,.171106,.624966],[-.100063,.306466,2.170225],[1.245943,.092351,.661031],[1.390414,.198996,-.0864],[-4.457265,5.030531,2.138242],[2.89776,.146575,1.297468],[1.802703,.088824,-.490405],[1.055447,.309261,2.392437],[2.300436,.142429,2.104254],[2.33399,.187756,2.416935],[2.325183,.134349,.574063],[2.410924,.370971,2.637115],[1.132924,.290511,3.061],[1.764028,.070212,-.80535],[2.156994,.397657,2.844061],[.920711,.225527,-.882456],[-4.552135,5.24096,2.85514],[.210016,.309396,2.064296],[.612067,.136815,-1.086002],[3.150236,.426757,1.802703],[-.24824,.282258,1.470997],[.974269,.301311,-.640898],[-4.401413,5.03966,2.535553],[.644319,.274006,-.817806],[.332922,.309077,.108474],[3.610001,.317447,.689353],[3.335681,.358195,.118477],[.623544,.318983,-.4193],[-.11012,.307747,1.831331],[-.407528,.291044,2.282935],[.069783,.285095,.950289],[.970135,.310392,-.283742],[.840564,.306898,.098854],[-.541827,.267753,1.683795],[-3.956082,4.55713,2.297164],[-4.161036,2.834481,1.64183],[-4.093952,4.977551,2.747747],[2.661819,.261867,1.926145],[-3.749926,2.161875,.895238],[-2.497776,1.3629,.791855],[.691482,.304968,1.582939],[-4.013193,4.830963,2.4769],[-3.639585,2.091265,1.304415],[-3.9767,2.563053,1.6284],[-3.979915,2.788616,1.977977],[.388782,.312656,1.709168],[-3.40873,1.877324,.851652],[-3.671637,5.136974,3.170734],[-3.12964,1.852012,.157682],[-3.629687,4.852698,2.686837],[-3.196164,1.793459,.452804],[-3.746338,2.31357,1.648551],[2.992192,.125251,.575976],[-3.254051,.054431,.314152],[-3.474644,1.925288,1.134116],[-3.418372,2.022882,1.578901],[-2.920955,1.705403,.29842],[-3.57229,2.152022,1.607572],[-3.251259,.09013,-.106174],[-3.299952,1.877781,1.348623],[-3.666819,2.441459,2.004838],[-2.912646,1.824748,-.045348],[-3.399511,2.479484,2.340393],[-3.009754,.015286,.075567],[-3.381443,2.316937,2.156923],[-3.352801,2.133341,1.857366],[-3.01788,1.687685,.645867],[-2.931857,1.678712,1.158472],[-3.301008,.08836,.591001],[1.358025,.19795,1.599144],[-2.999565,1.845016,1.618396],[-2.767957,.028397,-.196436],[-2.93962,2.078779,2.140593],[-3.346648,2.674056,2.518097],[3.324322,.20822,.628605],[3.091677,.137202,.9345],[-2.881807,.009952,.318439],[-2.764946,1.786619,1.693439],[-2.905542,1.932343,1.900002],[-3.140854,2.271384,2.274946],[-2.88995,2.487856,2.574759],[-2.367194,-943e-6,-.15576],[-3.050738,.068703,.742988],[-2.759525,1.55679,.877782],[-3.151775,2.48054,2.482749],[-2.578618,-.002885,.165716],[-2.651618,1.877246,1.981189],[-2.933973,.133731,1.631023],[1.047628,.100284,-1.085248],[-1.585123,.062083,-1.394896],[-2.287917,-.002671,.214434],[-2.524899,.007481,.471788],[-2.815492,2.188198,2.343294],[-2.095142,-.003149,-.094574],[-2.172686,-133e-6,.47963],[-2.732704,.074306,1.742079],[-2.49653,2.145668,2.42691],[-1.343683,.047721,-1.506391],[-2.581185,.048703,.975528],[-2.905101,.083158,2.010052],[-2.601514,2.007801,2.223089],[-2.339464,.02634,1.484304],[-2.907873,.10367,2.378149],[-1.368796,.062516,-1.049125],[-1.93244,.02443,-.427603],[-2.705081,.060513,2.303802],[3.372155,.206274,.892293],[-1.761827,.093202,-1.037404],[-1.700667,.0397,-.614221],[-1.872291,.011979,-.135753],[-1.929257,.074005,.728999],[-2.520128,.049665,1.99054],[-2.699411,.10092,2.603116],[3.211701,.27302,1.423357],[-1.445362,.1371,-.626491],[2.921332,.259112,1.645525],[-.993242,.058686,-1.408916],[-.944986,.157541,-1.097665],[-2.154301,.032749,1.882001],[-2.108789,1.988557,2.442673],[-1.015659,.25497,-.416665],[-1.898411,.015872,.16715],[-1.585517,.027121,.453445],[-2.311105,.061264,2.327061],[-2.637042,.152224,2.832201],[-2.087515,2.292972,2.617585],[-.750611,.056697,-1.504516],[-.472029,.075654,-1.360203],[-.710798,.139244,-1.183863],[-.97755,.26052,-.831167],[-.655814,.260843,-.880068],[-.897513,.275537,-.133042],[-2.049194,.084947,2.455422],[-.177837,.076362,-1.449009],[-.553393,.279083,-.59573],[-1.788636,.06163,2.231198],[-.34761,.255578,-.999614],[-1.398589,.036482,.65871],[-1.133918,.05617,.69473],[-1.43369,.058226,1.977865],[-2.505459,1.492266,1.19295]],r.cells=[[2,1661,3],[1676,7,6],[712,1694,9],[3,1674,1662],[11,1672,0],[1705,0,1],[5,6,1674],[4,5,1674],[7,8,712],[2,1662,10],[1,10,1705],[11,1690,1672],[1705,11,0],[5,1676,6],[7,9,6],[7,712,9],[2,3,1662],[3,4,1674],[1,2,10],[12,82,1837],[1808,12,1799],[1808,1799,1796],[12,861,82],[861,1808,13],[1808,861,12],[1799,12,1816],[1680,14,1444],[15,17,16],[14,1678,1700],[16,17,1679],[15,1660,17],[14,1084,1678],[15,1708,18],[15,18,1660],[1680,1084,14],[1680,15,1084],[15,1680,1708],[793,813,119],[1076,793,119],[1076,1836,22],[23,19,20],[21,1076,22],[21,22,23],[23,20,21],[1076,119,1836],[806,634,470],[432,1349,806],[251,42,125],[809,1171,791],[953,631,827],[634,1210,1176],[157,1832,1834],[56,219,53],[126,38,83],[37,85,43],[59,1151,1154],[83,75,41],[77,85,138],[201,948,46],[1362,36,37],[452,775,885],[1237,95,104],[966,963,1262],[85,77,43],[36,85,37],[1018,439,1019],[41,225,481],[85,83,127],[93,83,41],[935,972,962],[116,93,100],[98,82,813],[41,75,225],[298,751,54],[1021,415,1018],[77,138,128],[766,823,1347],[593,121,573],[905,885,667],[786,744,747],[100,41,107],[604,334,765],[779,450,825],[968,962,969],[225,365,481],[365,283,196],[161,160,303],[875,399,158],[328,1817,954],[62,61,1079],[358,81,72],[74,211,133],[160,161,138],[91,62,1079],[167,56,1405],[56,167,219],[913,914,48],[344,57,102],[43,77,128],[1075,97,1079],[389,882,887],[219,108,53],[1242,859,120],[604,840,618],[754,87,762],[197,36,1362],[1439,88,1200],[1652,304,89],[81,44,940],[445,463,151],[717,520,92],[129,116,100],[1666,1811,624],[1079,97,91],[62,91,71],[688,898,526],[463,74,133],[278,826,99],[961,372,42],[799,94,1007],[100,93,41],[1314,943,1301],[184,230,109],[875,1195,231],[133,176,189],[751,755,826],[101,102,57],[1198,513,117],[748,518,97],[1145,1484,1304],[358,658,81],[971,672,993],[445,151,456],[252,621,122],[36,271,126],[85,36,126],[116,83,93],[141,171,1747],[1081,883,103],[1398,1454,149],[457,121,593],[127,116,303],[697,70,891],[457,891,1652],[1058,1668,112],[518,130,97],[214,319,131],[185,1451,1449],[463,133,516],[1428,123,177],[113,862,561],[215,248,136],[186,42,251],[127,83,116],[160,85,127],[162,129,140],[154,169,1080],[169,170,1080],[210,174,166],[1529,1492,1524],[450,875,231],[399,875,450],[171,141,170],[113,1155,452],[131,319,360],[44,175,904],[452,872,113],[746,754,407],[147,149,150],[309,390,1148],[53,186,283],[757,158,797],[303,129,162],[429,303,162],[154,168,169],[673,164,193],[38,271,75],[320,288,1022],[246,476,173],[175,548,904],[182,728,456],[199,170,169],[168,199,169],[199,171,170],[184,238,230],[246,247,180],[1496,1483,1467],[147,150,148],[828,472,445],[53,108,186],[56,53,271],[186,961,42],[1342,391,57],[1664,157,1834],[1070,204,178],[178,204,179],[285,215,295],[692,55,360],[192,193,286],[359,673,209],[586,195,653],[121,89,573],[202,171,199],[238,515,311],[174,210,240],[174,105,166],[717,276,595],[1155,1149,452],[1405,56,197],[53,283,30],[75,53,30],[45,235,1651],[210,166,490],[181,193,192],[185,620,217],[26,798,759],[1070,226,204],[220,187,179],[220,168,187],[202,222,171],[359,209,181],[182,456,736],[964,167,1405],[76,250,414],[807,1280,1833],[70,883,1652],[227,179,204],[221,199,168],[221,202,199],[360,494,131],[214,241,319],[105,247,166],[205,203,260],[388,480,939],[482,855,211],[8,807,1833],[226,255,204],[228,221,168],[166,173,490],[701,369,702],[211,855,262],[631,920,630],[1448,1147,1584],[255,227,204],[237,220,179],[228,168,220],[222,256,555],[215,259,279],[126,271,38],[108,50,186],[227,236,179],[236,237,179],[220,237,228],[228,202,221],[256,222,202],[555,256,229],[259,152,279],[27,1296,31],[186,50,961],[961,234,372],[1651,235,812],[1572,1147,1448],[255,226,1778],[255,236,227],[256,257,229],[106,184,109],[241,410,188],[177,578,620],[209,673,181],[1136,1457,79],[1507,245,718],[255,273,236],[275,410,241],[206,851,250],[1459,253,1595],[1406,677,1650],[228,274,202],[202,281,256],[348,239,496],[205,172,203],[369,248,702],[261,550,218],[261,465,550],[574,243,566],[921,900,1220],[291,273,255],[348,238,265],[109,230,194],[149,380,323],[443,270,421],[272,291,255],[274,228,237],[274,292,202],[281,257,256],[276,543,341],[152,259,275],[1111,831,249],[632,556,364],[299,273,291],[299,236,273],[280,237,236],[202,292,281],[247,246,173],[282,49,66],[1620,1233,1553],[299,280,236],[280,305,237],[237,305,274],[306,292,274],[330,257,281],[246,194,264],[166,247,173],[912,894,896],[611,320,244],[1154,1020,907],[969,962,290],[272,299,291],[305,318,274],[145,212,240],[164,248,285],[259,277,275],[193,164,295],[269,240,210],[1033,288,320],[46,948,206],[336,280,299],[330,281,292],[257,307,300],[369,136,248],[145,240,269],[502,84,465],[193,295,286],[164,285,295],[282,302,49],[161,303,429],[318,306,274],[306,330,292],[315,257,330],[315,307,257],[307,352,300],[300,352,308],[275,277,403],[353,1141,333],[1420,425,47],[611,313,320],[85,126,83],[128,1180,43],[303,116,129],[280,314,305],[314,318,305],[190,181,242],[203,214,131],[820,795,815],[322,299,272],[322,336,299],[315,339,307],[172,152,617],[172,214,203],[321,1033,320],[1401,941,946],[85,160,138],[976,454,951],[747,60,786],[317,322,272],[339,352,307],[266,33,867],[163,224,218],[247,614,180],[648,639,553],[388,172,205],[611,345,313],[313,345,320],[160,127,303],[454,672,951],[317,329,322],[314,280,336],[306,338,330],[330,339,315],[1236,115,436],[342,321,320],[1046,355,328],[328,346,325],[325,346,317],[367,314,336],[314,337,318],[337,306,318],[338,343,330],[342,320,345],[355,349,328],[346,329,317],[347,336,322],[314,362,337],[330,343,339],[340,308,352],[135,906,1022],[239,156,491],[194,230,486],[40,1015,1003],[321,355,1046],[329,382,322],[382,347,322],[347,367,336],[337,371,306],[306,371,338],[1681,296,1493],[286,172,388],[230,348,486],[348,183,486],[384,332,830],[328,349,346],[367,362,314],[371,343,338],[339,351,352],[57,344,78],[342,355,321],[386,346,349],[386,350,346],[346,350,329],[347,366,367],[343,363,339],[323,380,324],[152,275,241],[345,1045,342],[350,374,329],[339,363,351],[234,340,352],[353,361,354],[40,34,1015],[373,355,342],[373,349,355],[374,382,329],[366,347,382],[371,363,343],[351,379,352],[379,372,352],[372,234,352],[156,190,491],[319,241,692],[354,361,31],[366,377,367],[363,379,351],[133,590,516],[197,56,271],[1045,370,342],[370,373,342],[374,350,386],[377,366,382],[367,395,362],[400,337,362],[400,371,337],[378,363,371],[106,109,614],[181,673,193],[953,920,631],[376,349,373],[376,386,349],[378,379,363],[224,375,218],[279,152,172],[361,619,381],[1347,823,795],[760,857,384],[392,374,386],[394,395,367],[383,371,400],[383,378,371],[218,375,261],[197,271,36],[414,454,976],[385,376,373],[1051,382,374],[387,394,367],[377,387,367],[395,400,362],[279,172,295],[30,365,225],[450,231,825],[385,373,370],[398,374,392],[1051,377,382],[396,378,383],[348,496,183],[295,172,286],[357,269,495],[1148,390,1411],[75,30,225],[206,76,54],[412,386,376],[412,392,386],[396,383,400],[651,114,878],[123,1241,506],[238,311,265],[381,653,29],[618,815,334],[427,1032,411],[298,414,976],[791,332,384],[129,100,140],[412,404,392],[392,404,398],[140,107,360],[395,394,400],[423,379,378],[385,412,376],[406,94,58],[419,415,1021],[422,423,378],[423,125,379],[258,508,238],[311,156,265],[213,287,491],[449,411,1024],[412,1068,404],[55,140,360],[76,414,54],[394,416,400],[400,416,396],[422,378,396],[1258,796,789],[427,411,449],[427,297,1032],[1385,1366,483],[417,448,284],[1507,341,245],[162,140,444],[658,44,81],[433,125,423],[438,251,125],[429,162,439],[1342,57,1348],[765,766,442],[697,891,695],[1057,396,416],[440,423,422],[440,433,423],[433,438,125],[438,196,251],[74,482,211],[1136,79,144],[29,195,424],[242,1004,492],[57,757,28],[414,298,54],[238,348,230],[224,163,124],[295,215,279],[495,269,490],[449,446,427],[446,297,427],[1020,1163,909],[128,138,419],[66,980,443],[415,439,1018],[111,396,1057],[111,422,396],[840,249,831],[593,664,596],[218,550,155],[109,194,180],[483,268,855],[161,415,419],[1737,232,428],[360,107,494],[1006,1011,410],[444,140,55],[919,843,430],[190,242,213],[275,403,410],[131,494,488],[449,663,446],[138,161,419],[128,419,34],[439,162,444],[460,440,422],[440,438,433],[472,74,445],[491,190,213],[238,508,515],[46,206,54],[972,944,962],[1241,1428,1284],[111,460,422],[470,432,806],[248,164,702],[1025,467,453],[553,1235,648],[263,114,881],[267,293,896],[469,438,440],[455,196,438],[287,242,492],[239,265,156],[213,242,287],[1684,746,63],[663,474,446],[415,161,429],[140,100,107],[1055,459,467],[469,455,438],[259,542,277],[446,474,466],[446,466,447],[439,444,1019],[614,109,180],[190,359,181],[156,497,190],[726,474,663],[1023,458,459],[461,440,460],[269,210,490],[246,180,194],[590,133,189],[163,218,155],[467,468,453],[1063,1029,111],[111,1029,460],[1029,464,460],[461,469,440],[150,149,323],[828,445,456],[375,502,261],[474,475,466],[573,426,462],[478,1023,477],[478,458,1023],[458,479,467],[459,458,467],[468,393,453],[464,461,460],[484,365,455],[1232,182,1380],[172,617,214],[547,694,277],[542,547,277],[184,258,238],[261,502,465],[467,479,468],[484,455,469],[1380,182,864],[475,476,466],[80,447,476],[466,476,447],[415,429,439],[479,487,468],[487,287,468],[492,393,468],[260,469,461],[481,365,484],[531,473,931],[692,360,319],[726,495,474],[468,287,492],[480,464,1029],[260,461,464],[494,481,484],[74,472,482],[174,240,212],[223,106,614],[486,477,485],[478,496,458],[491,487,479],[123,402,177],[488,469,260],[488,484,469],[265,239,348],[248,215,285],[474,490,475],[477,486,478],[458,496,479],[239,491,479],[1584,1147,1334],[488,494,484],[401,123,506],[495,490,474],[490,173,475],[80,476,264],[491,287,487],[480,1029,1004],[480,205,464],[173,476,475],[485,194,486],[486,183,478],[478,183,496],[496,239,479],[848,1166,60],[268,262,855],[205,260,464],[260,203,488],[203,131,488],[246,264,476],[194,485,264],[1002,310,1664],[311,515,497],[515,359,497],[565,359,515],[1250,1236,301],[736,456,151],[654,174,567],[577,534,648],[519,505,645],[725,565,508],[150,1723,148],[584,502,505],[584,526,502],[502,526,84],[607,191,682],[560,499,660],[607,517,191],[1038,711,124],[951,672,971],[716,507,356],[868,513,1198],[615,794,608],[682,191,174],[1313,928,1211],[617,241,214],[511,71,91],[408,800,792],[192,286,525],[80,485,447],[91,97,130],[1675,324,888],[207,756,532],[582,1097,1124],[311,497,156],[510,130,146],[523,511,510],[608,708,616],[546,690,650],[511,527,358],[536,146,518],[465,418,550],[418,709,735],[520,514,500],[584,505,519],[536,518,509],[146,536,510],[538,527,511],[876,263,669],[646,524,605],[510,536,523],[527,175,358],[724,876,669],[721,724,674],[524,683,834],[558,509,522],[558,536,509],[523,538,511],[611,243,574],[528,706,556],[668,541,498],[523,537,538],[527,540,175],[532,756,533],[1013,60,747],[551,698,699],[92,520,500],[535,536,558],[536,569,523],[538,540,527],[539,548,175],[567,212,145],[401,896,293],[534,675,639],[1510,595,1507],[557,545,530],[569,536,535],[537,540,538],[540,539,175],[569,537,523],[1135,718,47],[587,681,626],[580,535,558],[99,747,278],[701,565,725],[665,132,514],[665,514,575],[132,549,653],[176,651,189],[65,47,266],[597,569,535],[569,581,537],[537,581,540],[563,539,540],[539,564,548],[1509,1233,1434],[132,653,740],[550,710,155],[714,721,644],[410,1011,188],[732,534,586],[560,562,729],[555,557,222],[580,558,545],[597,535,580],[581,563,540],[5,821,1676],[576,215,136],[649,457,741],[564,539,563],[124,711,224],[550,668,710],[550,541,668],[565,701,673],[560,613,499],[233,532,625],[545,555,580],[601,581,569],[594,904,548],[1463,1425,434],[185,149,1454],[721,674,644],[185,380,149],[577,424,586],[462,586,559],[597,601,569],[594,548,564],[566,603,574],[165,543,544],[457,89,121],[586,424,195],[725,587,606],[1078,582,1124],[588,925,866],[462,559,593],[189,878,590],[555,229,580],[602,563,581],[904,594,956],[434,1425,1438],[1024,112,821],[572,587,626],[600,597,580],[599,591,656],[600,580,229],[601,622,581],[581,622,602],[602,564,563],[602,594,564],[603,611,574],[498,529,546],[697,1145,70],[592,628,626],[610,597,600],[597,610,601],[222,557,171],[604,765,799],[573,462,593],[133,200,176],[729,607,627],[1011,692,188],[518,146,130],[585,687,609],[682,627,607],[1712,599,656],[562,592,607],[643,656,654],[257,600,229],[601,633,622],[623,594,602],[174,212,567],[725,606,701],[609,701,606],[610,633,601],[633,642,622],[380,216,324],[142,143,1249],[501,732,586],[534,577,586],[648,1235,577],[610,641,633],[310,1002,1831],[618,334,604],[1710,145,269],[707,498,659],[501,586,462],[625,501,462],[726,663,691],[300,600,257],[641,610,600],[622,629,602],[602,629,623],[55,692,444],[518,748,509],[929,1515,1411],[620,578,267],[71,511,358],[707,668,498],[650,687,585],[600,300,641],[641,657,633],[1675,888,1669],[622,636,629],[505,502,375],[541,529,498],[332,420,1053],[637,551,638],[534,639,648],[69,623,873],[300,512,641],[633,657,642],[562,660,579],[687,637,638],[709,646,605],[775,738,885],[559,549,132],[646,683,524],[641,512,657],[266,897,949],[1712,643,1657],[184,727,258],[674,724,669],[699,714,647],[628,659,572],[657,662,642],[571,881,651],[517,607,504],[598,706,528],[598,694,547],[640,552,560],[655,693,698],[698,693,721],[91,510,511],[144,301,1136],[324,216,888],[870,764,1681],[575,514,520],[276,544,543],[658,175,44],[645,505,711],[659,546,572],[700,524,655],[605,700,529],[266,867,897],[1695,1526,764],[579,659,628],[654,591,682],[586,549,559],[698,721,714],[896,401,506],[640,734,599],[664,665,575],[621,629,636],[1712,656,643],[547,644,598],[710,668,707],[640,560,734],[655,698,551],[694,528,277],[512,662,657],[504,592,626],[688,584,519],[152,241,617],[587,725,681],[598,669,706],[526,670,84],[598,528,694],[710,707,499],[579,592,562],[660,659,579],[323,324,1134],[326,895,473],[195,29,653],[84,670,915],[560,660,562],[504,626,681],[711,505,224],[651,881,114],[216,620,889],[1362,678,197],[493,99,48],[1659,691,680],[529,690,546],[430,843,709],[655,524,693],[174,191,105],[674,669,598],[98,712,82],[572,546,585],[72,61,71],[912,911,894],[106,223,184],[664,132,665],[843,646,709],[635,699,136],[699,698,714],[593,132,664],[688,526,584],[185,177,620],[533,675,534],[687,638,635],[1652,89,457],[896,506,912],[132,740,514],[689,685,282],[691,449,680],[48,436,493],[136,699,647],[739,640,554],[549,586,653],[532,533,625],[1530,695,649],[653,381,619],[736,151,531],[188,692,241],[177,402,578],[33,689,867],[689,33,685],[593,559,132],[949,65,266],[711,1038,661],[939,480,1004],[609,369,701],[616,552,615],[619,361,740],[151,463,516],[513,521,117],[691,663,449],[186,251,196],[333,302,327],[613,560,552],[616,613,552],[690,551,637],[660,707,659],[704,208,1203],[418,735,550],[163,708,124],[524,834,693],[554,640,599],[245,341,165],[565,673,359],[155,710,708],[105,191,517],[1515,198,1411],[1709,554,599],[60,289,786],[838,1295,1399],[533,534,625],[710,499,708],[556,632,410],[217,620,216],[591,627,682],[504,503,223],[643,654,567],[690,637,650],[545,557,555],[174,654,682],[719,691,1659],[727,681,508],[645,711,661],[794,615,739],[565,515,508],[282,685,302],[1150,397,1149],[638,699,635],[544,685,33],[719,726,691],[1742,1126,1733],[1724,1475,148],[556,410,403],[185,217,380],[503,504,681],[277,556,403],[32,1178,158],[1712,1709,599],[605,529,541],[635,136,369],[687,635,369],[529,700,690],[700,551,690],[89,304,573],[625,534,732],[730,302,685],[503,681,727],[702,673,701],[730,327,302],[327,353,333],[596,664,575],[660,499,707],[585,546,650],[560,729,734],[700,655,551],[176,571,651],[517,504,223],[730,685,544],[1661,1682,726],[1682,495,726],[1250,301,917],[605,524,700],[609,687,369],[516,389,895],[1553,686,1027],[673,702,164],[656,591,654],[520,596,575],[402,123,401],[828,456,728],[1645,677,1653],[528,556,277],[638,551,699],[190,497,359],[276,730,544],[1117,1525,933],[1027,686,1306],[155,708,163],[709,605,541],[647,644,547],[650,637,687],[599,734,591],[578,293,267],[1682,357,495],[510,91,130],[734,729,627],[576,542,215],[709,541,735],[735,541,550],[276,500,730],[500,327,730],[653,619,740],[414,851,454],[734,627,591],[729,562,607],[615,552,640],[525,181,192],[308,512,300],[223,503,727],[266,165,33],[92,500,276],[321,1046,1033],[585,609,606],[1200,1559,86],[628,572,626],[301,436,803],[714,644,647],[708,499,613],[721,693,724],[514,353,327],[353,740,361],[344,158,78],[708,613,616],[615,640,739],[500,514,327],[514,740,353],[1449,177,185],[462,233,625],[851,405,1163],[608,616,615],[647,542,576],[625,732,501],[1097,582,1311],[1235,424,577],[579,628,592],[607,592,504],[24,432,470],[105,614,247],[104,742,471],[542,259,215],[365,196,455],[1420,47,65],[223,727,184],[547,542,647],[572,585,606],[587,572,606],[262,780,1370],[647,576,136],[644,674,598],[271,53,75],[727,508,258],[471,742,142],[505,375,224],[357,1710,269],[725,508,681],[659,498,546],[743,1178,32],[1195,634,231],[1176,24,470],[743,1110,1178],[135,809,857],[63,746,407],[634,1176,470],[159,1112,27],[1176,1685,24],[399,450,779],[1178,856,875],[751,744,54],[436,48,772],[634,1108,1210],[769,1285,1286],[751,298,755],[746,1684,754],[754,924,87],[722,1625,756],[87,839,153],[489,795,820],[758,808,1518],[839,840,153],[831,1111,959],[1111,749,959],[810,1253,1363],[1247,1394,713],[1388,1329,1201],[1242,120,761],[857,791,384],[758,1523,808],[296,764,1504],[70,1652,891],[207,233,1638],[1348,57,28],[858,420,332],[964,1379,1278],[420,1194,816],[784,1076,1186],[1076,21,1186],[1710,767,1],[849,822,778],[806,137,787],[786,790,744],[790,54,744],[771,63,407],[785,852,818],[774,1823,272],[895,151,516],[135,1022,809],[99,826,48],[48,826,755],[808,705,408],[833,441,716],[1733,743,32],[1385,836,852],[772,827,737],[1005,49,781],[793,1697,813],[1518,441,1537],[1139,1132,859],[782,801,770],[1510,1530,676],[770,814,835],[231,787,825],[207,722,756],[26,771,798],[782,863,865],[832,54,790],[865,842,507],[799,765,94],[1175,1261,1353],[800,408,805],[262,986,200],[792,800,814],[801,792,770],[704,1203,1148],[356,1514,822],[165,544,33],[561,776,113],[1043,738,775],[815,831,820],[773,792,801],[772,48,914],[772,737,803],[436,772,803],[808,817,705],[1624,822,1527],[588,1144,788],[799,762,604],[821,1520,1676],[854,803,666],[828,482,472],[445,74,463],[831,489,820],[828,836,482],[716,782,763],[334,815,766],[815,823,766],[334,766,765],[819,805,837],[1716,1521,1412],[1684,924,754],[800,805,819],[1709,829,554],[806,1349,137],[99,1013,747],[341,595,276],[817,810,818],[1176,1691,1685],[763,782,865],[830,846,1052],[865,1499,842],[982,846,1053],[847,832,790],[1178,875,158],[817,818,705],[1302,1392,45],[96,417,284],[223,614,517],[356,507,1514],[1166,848,1179],[1349,432,26],[717,92,276],[770,835,863],[522,509,1745],[847,841,832],[832,841,46],[829,739,554],[802,824,39],[397,1043,775],[1567,849,778],[1385,483,855],[1349,26,1346],[441,801,782],[402,401,293],[1043,667,738],[759,798,1007],[819,837,728],[728,837,828],[837,852,828],[1537,441,833],[148,1475,147],[805,705,837],[716,441,782],[483,1371,780],[814,819,844],[845,753,1336],[1661,719,4],[862,847,790],[737,827,666],[201,46,841],[810,785,818],[408,705,805],[1560,1536,849],[1585,853,1786],[7,1668,807],[7,807,8],[822,1514,1527],[800,819,814],[847,862,841],[991,857,760],[705,818,837],[808,408,773],[402,293,578],[791,858,332],[1480,1228,1240],[814,844,835],[785,1385,852],[1132,120,859],[1743,1726,684],[1704,783,1279],[1623,1694,1731],[959,489,831],[1518,808,773],[862,872,841],[441,773,801],[331,512,308],[380,217,216],[841,872,201],[818,852,837],[448,1480,1240],[856,1108,1195],[1527,1514,1526],[819,182,1232],[871,724,693],[852,836,828],[770,792,814],[803,737,666],[751,826,278],[1674,1727,1699],[849,356,822],[871,693,834],[507,842,1514],[1406,1097,869],[1328,1349,1346],[823,815,795],[744,751,278],[1110,856,1178],[520,717,316],[871,834,683],[884,876,724],[165,266,47],[716,763,507],[216,889,888],[853,1585,1570],[1536,716,356],[886,873,623],[782,770,863],[432,24,26],[683,882,871],[884,724,871],[114,876,884],[516,590,389],[11,1218,1628],[862,113,872],[886,623,629],[830,1052,1120],[762,153,604],[773,408,792],[763,865,507],[153,840,604],[882,884,871],[531,151,326],[886,890,873],[133,262,200],[819,1232,844],[621,636,122],[645,892,519],[1130,1076,784],[114,263,876],[1670,10,1663],[911,670,894],[452,885,872],[872,885,201],[887,882,683],[878,884,882],[590,878,882],[890,867,689],[897,629,621],[897,886,629],[819,728,182],[519,893,688],[894,670,526],[898,894,526],[1536,356,849],[810,1363,785],[878,114,884],[879,888,892],[892,889,893],[893,898,688],[895,683,843],[895,887,683],[889,620,267],[590,882,389],[418,465,84],[949,897,621],[897,890,886],[889,267,893],[898,267,896],[531,326,473],[189,651,878],[843,683,646],[897,867,890],[888,889,892],[893,267,898],[896,894,898],[473,895,843],[895,389,887],[974,706,669],[513,1115,521],[326,151,895],[809,791,857],[211,262,133],[920,923,947],[923,90,947],[90,25,947],[25,972,935],[64,431,899],[52,899,901],[903,905,59],[437,967,73],[839,1242,761],[904,975,44],[917,301,144],[915,670,911],[905,201,885],[1684,63,1685],[1033,1194,288],[950,913,755],[912,918,911],[950,914,913],[506,918,912],[922,919,915],[911,922,915],[1004,451,492],[1263,553,639],[922,911,918],[630,920,947],[916,506,926],[916,918,506],[521,1115,1098],[916,922,918],[919,418,915],[83,38,75],[24,1685,771],[110,1230,1213],[712,8,1837],[922,930,919],[919,430,418],[1395,1402,1187],[930,922,916],[594,623,69],[35,431,968],[35,968,969],[866,924,1684],[1625,1263,675],[631,630,52],[930,931,919],[430,709,418],[302,333,49],[1446,978,1138],[799,1007,798],[931,843,919],[947,25,64],[885,738,667],[1262,963,964],[899,970,901],[1401,946,938],[1117,933,1091],[1685,63,771],[905,948,201],[979,937,980],[951,953,950],[937,270,443],[1154,903,59],[1194,954,1067],[909,405,907],[850,1151,59],[1769,811,1432],[76,206,250],[938,946,966],[965,927,942],[938,966,957],[955,975,904],[927,965,934],[52,51,631],[59,905,667],[431,935,968],[786,289,561],[252,122,671],[481,494,107],[954,1817,1067],[795,25,90],[958,965,945],[795,972,25],[902,983,955],[972,489,944],[1256,29,424],[671,331,945],[946,958,963],[956,955,904],[902,955,956],[671,512,331],[945,331,961],[662,671,122],[671,662,512],[934,65,927],[630,947,52],[666,631,910],[850,59,667],[961,331,234],[1024,411,1042],[890,69,873],[252,671,945],[975,290,940],[283,186,196],[30,283,365],[950,755,298],[946,965,958],[985,290,975],[969,290,985],[405,851,206],[935,431,64],[941,1423,1420],[964,963,167],[942,252,945],[78,757,57],[49,1005,66],[937,979,270],[631,666,827],[980,937,443],[66,689,282],[421,902,956],[947,64,52],[35,979,899],[951,971,953],[762,87,153],[27,31,381],[924,839,87],[946,963,966],[331,308,340],[957,966,1262],[473,843,931],[953,971,920],[270,969,902],[935,962,968],[51,1005,781],[969,983,902],[437,73,940],[69,421,956],[761,249,840],[263,974,669],[962,944,967],[962,437,290],[985,975,955],[907,405,948],[720,957,1262],[25,935,64],[176,200,571],[108,945,50],[250,851,414],[200,986,571],[881,974,263],[827,772,953],[970,899,980],[29,159,27],[234,331,340],[948,405,206],[980,899,979],[986,984,571],[571,984,881],[990,706,974],[946,934,965],[970,980,66],[1113,1486,1554],[984,981,881],[881,987,974],[689,66,443],[1005,901,66],[983,985,955],[165,47,718],[987,990,974],[1370,986,262],[901,970,66],[51,901,1005],[981,987,881],[988,706,990],[942,945,965],[290,437,940],[64,899,52],[988,556,706],[941,934,946],[431,35,899],[996,989,984],[984,989,981],[981,989,987],[35,969,270],[1370,995,986],[986,995,984],[989,999,987],[987,992,990],[992,988,990],[962,967,437],[951,950,976],[979,35,270],[421,270,902],[998,995,1370],[987,999,992],[988,364,556],[969,985,983],[689,443,890],[995,1e3,984],[219,958,108],[998,1e3,995],[999,997,992],[914,953,772],[845,1336,745],[806,787,231],[1e3,996,984],[989,996,999],[50,945,961],[443,421,69],[797,158,779],[1098,1463,434],[996,1009,999],[1001,988,992],[1001,364,988],[903,907,905],[26,759,973],[997,1001,992],[632,364,1001],[1346,26,973],[998,1008,1e3],[1e3,1009,996],[531,931,736],[252,949,621],[286,388,525],[1174,1008,998],[1009,1010,999],[999,1010,997],[1014,1001,997],[614,105,517],[958,945,108],[525,1004,242],[963,958,219],[233,426,304],[1e3,1008,1009],[1010,1014,997],[1001,1006,632],[824,413,39],[642,636,622],[480,388,205],[28,757,797],[1014,1006,1001],[1006,410,632],[975,940,44],[1234,420,858],[54,832,46],[1009,1012,1010],[167,963,219],[41,481,107],[1017,1010,1012],[122,636,662],[939,525,388],[525,939,1004],[950,953,914],[829,1735,739],[1008,880,1015],[1008,1015,1009],[1263,639,675],[956,594,69],[795,90,1347],[1179,848,1013],[759,1007,973],[1009,1015,1012],[1012,1016,1017],[1017,1014,1010],[1019,1011,1006],[927,65,949],[649,316,595],[913,48,755],[976,950,298],[1003,1015,880],[1018,1006,1014],[1021,1018,1014],[444,692,1011],[451,1029,1063],[1185,851,1163],[29,27,381],[181,525,242],[1021,1014,1017],[1016,1021,1017],[1018,1019,1006],[1019,444,1011],[927,949,942],[451,393,492],[903,1154,907],[391,101,57],[94,765,58],[419,1016,1012],[949,252,942],[907,1020,909],[765,442,58],[94,406,908],[1007,94,908],[34,1012,1015],[34,419,1012],[419,1021,1016],[451,1057,393],[907,948,905],[1034,1073,1039],[1061,906,1619],[1068,960,1034],[471,1249,104],[112,1024,1042],[372,379,125],[341,543,165],[141,1094,170],[566,243,1061],[398,1034,1039],[325,317,1823],[1493,296,1724],[850,667,1043],[1054,297,1065],[1619,135,1074],[1061,243,906],[680,1024,821],[1103,96,1245],[1440,1123,1491],[1047,1025,1044],[672,454,1231],[1484,697,1530],[993,672,1231],[178,154,1088],[1044,1041,1066],[112,1062,1058],[1530,649,676],[178,1088,1040],[1046,328,954],[243,244,1022],[954,1194,1033],[1042,411,1032],[971,993,1056],[960,1093,1034],[1754,1338,232],[385,1064,412],[1057,1063,111],[748,1071,1447],[1530,697,695],[971,1056,1270],[977,1059,1211],[649,741,316],[1060,1452,1030],[353,354,1323],[695,768,649],[398,404,1034],[596,316,741],[1836,119,13],[1513,1115,1528],[883,1081,1652],[1039,1073,1048],[462,426,233],[31,1296,354],[1055,1047,1066],[1032,1054,1045],[1521,310,1224],[119,861,13],[1194,1234,288],[1109,1771,1070],[1166,1160,776],[1044,1035,1041],[1026,960,1064],[1050,1032,1045],[1049,1041,387],[115,1013,99],[1046,954,1033],[1321,920,971],[611,1058,345],[1048,1066,1049],[1023,1055,1073],[1029,451,1004],[118,1094,141],[1094,1080,170],[1042,1032,1050],[1026,1064,385],[15,16,1084],[1096,1079,61],[1075,1071,748],[325,1817,328],[909,1163,405],[1022,1234,809],[374,398,1051],[1082,72,81],[1023,1034,1093],[1817,1794,1067],[86,1445,1400],[1507,1535,1510],[1079,1096,1075],[568,1478,1104],[1070,178,1040],[1034,1023,1073],[776,1155,113],[1103,143,142],[1140,81,73],[1082,81,1140],[1060,1030,936],[1040,1086,1109],[370,1065,385],[61,72,1082],[1087,1096,1144],[1040,1088,1086],[1651,812,752],[1062,1050,1045],[187,154,178],[179,187,178],[1099,1344,1101],[1668,1058,807],[1073,1055,1048],[1099,1336,1344],[1283,943,1123],[1049,387,1051],[1024,680,449],[61,1082,1100],[967,749,1111],[1439,1037,88],[742,1505,142],[398,1039,1051],[1107,1336,1099],[1344,1542,1101],[142,1505,1103],[477,1093,447],[477,1023,1093],[471,142,1249],[1041,1035,394],[1328,568,1104],[61,1100,1096],[154,1092,1088],[112,1042,1050],[154,187,168],[435,235,45],[1075,1096,1087],[97,1075,748],[1049,1066,1041],[816,1067,1028],[846,982,1142],[1245,96,284],[1092,154,1080],[1057,451,1063],[387,377,1051],[1055,1025,1047],[1075,1087,1089],[1106,1108,856],[1068,1034,404],[1480,1545,868],[906,135,1619],[1074,991,1095],[570,566,1061],[1025,453,1044],[745,1336,1107],[1035,1057,416],[1092,1102,1129],[1074,135,991],[1105,745,1107],[447,1026,446],[394,387,1041],[73,81,940],[1118,1108,1106],[1210,1108,874],[243,1022,906],[412,1064,1068],[1280,611,603],[960,447,1093],[1051,1039,1049],[1040,1109,1070],[1471,1037,1439],[69,890,443],[1377,703,1374],[1092,1080,1102],[1096,1100,788],[1096,788,1144],[1114,967,1111],[446,1026,297],[70,1112,883],[453,393,1057],[1118,874,1108],[1054,370,1045],[1080,1094,1102],[1039,1048,1049],[428,753,845],[1047,1044,1066],[1044,453,1035],[1472,731,1512],[1126,1121,743],[743,1121,1110],[1032,297,1054],[1480,868,1216],[71,358,72],[1133,967,1114],[1105,1119,745],[1035,453,1057],[1026,447,960],[454,851,1190],[1030,1477,652],[589,816,1028],[1110,1121,1106],[1122,1118,1106],[1116,874,1118],[1048,1055,1066],[1194,1067,816],[744,278,747],[745,1120,845],[845,1052,428],[1105,1780,1119],[1065,297,385],[1098,1529,1463],[731,1060,936],[235,434,812],[1445,1525,1117],[1106,1121,1122],[1122,1127,1118],[1127,1116,1118],[1094,118,1732],[1119,1120,745],[1406,1124,1097],[435,117,235],[1462,1440,1037],[1126,1129,1121],[1088,1092,1129],[1133,73,967],[1120,1052,845],[812,434,752],[1441,1559,1200],[1131,588,413],[1054,1065,370],[235,1098,434],[1052,1142,428],[1737,428,1142],[1496,1446,1483],[1182,1083,1654],[1121,1129,1122],[1732,1116,1127],[768,457,649],[761,1114,249],[1064,960,1068],[1135,1481,1136],[1126,952,1129],[1087,588,1131],[1087,1144,588],[859,788,1139],[1140,1133,1132],[1133,1140,73],[1822,570,1061],[394,1035,416],[1055,1023,459],[80,264,485],[1119,1128,1120],[145,1658,567],[695,891,768],[1129,1102,1122],[1122,1102,1127],[1416,1077,1413],[297,1026,385],[1052,846,1142],[1445,1117,1400],[952,1086,1129],[1714,1089,1131],[1131,1089,1087],[1100,1139,788],[112,1050,1062],[1323,354,1296],[49,333,1141],[1142,982,1737],[79,1457,1091],[1088,1129,1086],[1102,1094,1127],[1127,1094,1732],[1100,1082,1139],[1082,1132,1139],[1082,1140,1132],[1150,1043,397],[60,1166,289],[1696,1146,1698],[1297,1202,1313],[409,1297,1313],[1234,1194,420],[1408,1391,1394],[424,1235,1243],[1203,309,1148],[485,477,447],[1152,1156,850],[1153,1149,1155],[1153,1157,1149],[1149,1152,1150],[1156,1154,1151],[776,1153,1155],[1157,1152,1149],[1217,1393,1208],[1156,1159,1154],[1153,1165,1157],[1165,1152,1157],[1159,1020,1154],[1161,1153,776],[1161,1165,1153],[1165,1158,1152],[1152,1158,1156],[1158,1159,1156],[1166,776,561],[1160,1161,776],[1161,1164,1165],[1161,1160,1164],[1158,1162,1159],[1159,1162,1020],[1270,1321,971],[1164,1170,1165],[1165,1162,1158],[1162,1163,1020],[588,788,925],[1166,1167,1160],[1165,1170,1162],[1160,1167,1164],[1162,1170,1163],[1179,1167,1166],[1167,1168,1164],[1164,1168,1170],[1168,1169,1170],[1234,1022,288],[802,39,866],[1179,1168,1167],[1169,1173,1170],[1170,1173,1163],[1173,1185,1163],[1360,1267,1364],[1169,1185,1173],[611,244,243],[900,1226,1376],[1260,1408,1350],[618,840,831],[1181,1183,1179],[1179,1184,1168],[1208,1274,1291],[1183,1184,1179],[1168,1184,1169],[1387,1395,1254],[1208,1204,1172],[1182,1197,1083],[1187,1083,1197],[1213,1183,1181],[1169,1207,1185],[135,857,991],[1013,1213,1181],[1189,1183,1213],[1183,1189,1184],[1169,1184,1207],[1207,1190,1185],[1180,1389,1288],[1191,1192,1640],[1640,1192,1090],[1090,1205,1654],[1654,1205,1182],[1188,1395,1187],[1126,743,1733],[788,859,925],[809,1234,1171],[1193,1197,1182],[1189,1199,1184],[1639,1191,1637],[1639,1212,1191],[1205,1193,1182],[1198,1187,1197],[1199,1207,1184],[332,1053,846],[1090,1192,1205],[117,1188,1187],[435,1188,117],[435,1206,1188],[1199,1189,1213],[420,816,1053],[1212,1215,1191],[117,1187,1198],[45,1206,435],[120,1132,1133],[874,1116,1210],[1191,1215,1192],[1193,1216,1197],[1216,1198,1197],[1199,1214,1207],[117,521,235],[1220,1311,1078],[1220,900,1311],[1653,1215,1212],[1192,1225,1205],[1205,1209,1193],[1209,1216,1193],[1389,1217,1172],[1207,1214,454],[171,557,1747],[1805,1078,1787],[1805,1219,1078],[1198,1216,868],[666,910,854],[1230,1231,1213],[1213,1231,1199],[1199,1231,1214],[1219,1220,1078],[1215,1221,1192],[1192,1221,1225],[1225,1228,1205],[1205,1228,1209],[1209,1228,1216],[1464,1325,1223],[1215,1227,1221],[1228,1480,1216],[1226,1653,1376],[1653,1249,1215],[1221,1240,1225],[1225,1240,1228],[839,761,840],[1238,1219,1805],[1238,1220,1219],[1232,1380,1375],[1226,1249,1653],[1221,1227,1240],[233,207,532],[110,1236,1230],[1248,1231,1230],[1231,454,1214],[1249,1227,1215],[1248,1056,1231],[489,959,944],[448,1240,284],[925,859,1242],[1805,1244,1238],[1252,1220,1238],[1252,921,1220],[1236,1251,1230],[1230,1251,1248],[1056,993,1231],[1031,1264,1263],[68,1186,157],[1227,1245,1240],[1103,1245,143],[1243,1235,612],[1252,95,921],[1249,1226,1237],[1390,1387,1254],[1120,384,830],[830,332,846],[1227,143,1245],[1315,1369,1358],[1356,1269,1386],[972,795,489],[1831,1224,310],[1250,1255,1251],[1251,1056,1248],[1256,1243,103],[658,358,175],[1620,1238,1244],[1620,1252,1238],[1506,95,1252],[104,1249,1237],[1249,143,1227],[1268,1419,1329],[634,806,231],[618,831,815],[924,1242,839],[1255,1270,1251],[1251,1270,1056],[866,925,1242],[103,29,1256],[424,1243,1256],[134,1651,752],[1250,917,1255],[1172,1204,1260],[1352,1036,1276],[1265,1201,1329],[804,1282,1259],[1259,1294,723],[335,1330,1305],[407,762,799],[875,856,1195],[32,158,344],[967,944,749],[372,125,42],[1175,1354,1261],[553,612,1235],[1259,1273,1294],[1294,1283,723],[757,78,158],[407,799,798],[901,51,52],[139,1386,1389],[1386,1269,1389],[1389,1269,1217],[1148,1590,1268],[1428,1449,1450],[804,1281,1282],[1273,1259,1282],[158,399,779],[771,407,798],[521,1098,235],[917,1312,1255],[1312,1270,1255],[1217,1269,1393],[1195,1108,634],[1110,1106,856],[1210,1691,1176],[27,1112,1145],[1296,27,1145],[1171,858,791],[704,1148,1290],[1430,1436,1437],[1282,1308,1273],[1300,943,1283],[1393,1355,1274],[720,1278,769],[1287,1059,1399],[1310,1388,1272],[1312,1321,1270],[851,1185,1190],[1296,1145,1304],[26,24,771],[51,910,631],[1329,1290,1268],[1290,1148,1268],[1298,1293,733],[1281,1293,1282],[1282,1293,1308],[1308,1299,1273],[1300,1283,1294],[1340,943,1300],[1340,1301,943],[407,754,762],[1287,1399,1295],[34,139,128],[1288,1172,1260],[120,1133,1114],[1306,1113,1511],[1464,1223,1292],[1299,1294,1273],[1299,1300,1294],[1286,1295,838],[1285,1247,1286],[1247,713,1286],[1201,1265,1390],[1378,1368,1357],[1482,1320,917],[917,1320,1312],[850,1156,1151],[588,39,413],[1324,1306,686],[789,1365,928],[1223,1326,1292],[1292,1326,1298],[869,1097,1311],[790,786,561],[1323,1304,932],[1323,1296,1304],[1317,1324,686],[1306,368,1113],[1325,1342,1223],[1326,1348,1298],[1293,1327,1308],[1308,1318,1299],[704,1290,1258],[1320,1321,1312],[761,120,1114],[1684,802,866],[1674,6,1727],[1316,1323,932],[1335,1337,1305],[1348,1327,1293],[1298,1348,1293],[1333,1300,1299],[1333,1343,1300],[1328,1301,1340],[1328,1314,1301],[838,1399,1319],[921,1237,900],[409,1391,1408],[1376,1653,677],[1281,804,1458],[1331,1324,1317],[1324,368,1306],[368,1338,1307],[1327,797,1308],[797,1345,1308],[1308,1345,1318],[1318,1333,1299],[1341,1147,1572],[923,1321,1320],[923,920,1321],[39,588,866],[1141,1323,1316],[1330,1335,1305],[1337,1335,1336],[1339,1332,1325],[1223,1342,1326],[1342,1348,1326],[1348,797,1327],[1345,1333,1318],[1343,1340,1300],[1419,1265,1329],[1347,1320,1584],[1535,1141,1316],[1078,1311,582],[1344,1335,1330],[753,1331,1337],[368,1324,1331],[753,368,1331],[1332,1485,1325],[1325,1485,1342],[787,1343,1333],[137,1328,1340],[973,1341,1479],[406,1147,1341],[1171,1234,858],[1141,1535,1322],[49,1141,1322],[1344,1336,1335],[973,908,1341],[766,1347,1584],[1347,923,1320],[781,49,1322],[368,232,1338],[787,1340,1343],[787,137,1340],[568,1346,973],[58,1147,406],[442,1334,1147],[58,442,1147],[442,766,1334],[90,923,1347],[428,368,753],[779,1333,1345],[825,787,1333],[137,1349,1328],[1328,1346,568],[908,406,1341],[924,866,1242],[1336,753,1337],[428,232,368],[1115,777,1098],[1348,28,797],[797,779,1345],[779,825,1333],[1007,908,973],[583,1351,880],[1365,1246,977],[1658,145,1710],[1310,796,1388],[718,245,165],[1302,1272,1254],[1174,1351,583],[1174,715,1351],[1358,1260,1204],[1374,1373,1276],[1377,1374,1276],[678,1362,1382],[1377,1276,254],[139,34,40],[1008,1174,583],[1396,1286,1319],[768,891,457],[1316,932,1535],[1289,1371,1360],[182,736,864],[1355,1364,1274],[860,1367,1354],[1362,1222,1382],[1376,869,1311],[1590,1411,198],[1232,1375,877],[1394,1295,1286],[880,1356,1386],[880,1351,1356],[1211,1059,1287],[197,678,1405],[880,1386,1003],[1368,1253,1357],[1357,1253,1036],[715,1289,1364],[1354,1367,703],[1383,877,1375],[1266,1288,1260],[1373,1374,703],[1372,1289,1174],[1303,1366,1378],[1351,715,1355],[1665,1666,624],[1309,1357,1036],[900,1237,1226],[1174,1289,715],[1337,1331,1317],[1360,1303,1359],[1267,1354,1175],[1241,1284,1414],[1377,254,929],[1385,855,836],[1396,1319,1436],[1361,1366,1303],[1381,1368,1378],[1313,1211,1391],[1368,1385,1363],[813,82,861],[1058,1280,807],[893,519,892],[1359,1303,860],[1382,1350,1247],[1371,1303,1360],[1267,1175,1271],[769,1286,1396],[712,1837,82],[1366,1385,1381],[1365,796,1310],[1003,1386,40],[780,1371,1370],[561,862,790],[1284,1380,864],[1449,1428,177],[611,1280,1058],[1284,1375,1380],[926,506,1241],[1305,1337,1317],[309,1203,208],[1388,1201,1390],[1309,1036,1352],[1377,929,1411],[1399,1059,1257],[1112,70,1145],[289,1166,561],[1288,1389,1172],[1362,37,1180],[713,1394,1286],[1355,1393,1269],[1401,1423,941],[1274,1271,1384],[860,1378,1367],[715,1364,1355],[677,1406,869],[1297,1358,1202],[1388,1258,1329],[1180,1288,1266],[1008,583,880],[1524,1425,1463],[1390,1403,1387],[1278,1379,1247],[1278,1247,1285],[964,1278,1262],[1358,1369,1202],[1715,1699,1726],[926,1241,1414],[1341,1572,1479],[926,930,916],[1397,51,781],[409,1358,1297],[1236,436,301],[1376,677,869],[1351,1355,1356],[758,1534,1523],[1378,1357,1367],[977,1211,1365],[1135,1136,854],[1394,1391,1295],[1266,1260,1222],[1365,1302,1246],[1232,877,844],[736,930,864],[1408,1358,409],[1508,817,1523],[1381,1385,1368],[718,854,910],[854,718,1135],[1382,1222,1350],[1391,1211,1287],[1391,1287,1295],[1257,1651,134],[1414,1284,864],[1291,1369,1315],[1202,928,1313],[86,1400,1413],[1413,1200,86],[1263,1625,1031],[1413,1400,1404],[1002,1664,1834],[930,926,1414],[1399,1257,134],[520,316,596],[1393,1274,1208],[1657,1655,1712],[1407,1404,1400],[1404,1410,1413],[1649,1229,1406],[1362,1266,1222],[1384,1271,1175],[900,1376,1311],[1274,1384,1291],[1291,1384,1431],[1433,1396,1436],[1267,1359,1354],[309,1353,703],[838,1319,1286],[1407,1410,1404],[441,1518,773],[1241,123,1428],[1622,1521,1224],[1217,1208,1172],[1130,793,1076],[425,1409,1481],[1481,1409,1533],[1303,1378,860],[1350,1408,1394],[1246,1651,977],[1289,1360,1364],[1727,1694,1623],[1417,1407,1533],[1417,1410,1407],[1406,1650,1649],[1319,134,1437],[1414,864,930],[1406,1229,1124],[1354,1359,860],[1433,769,1396],[1417,1533,1409],[1416,1413,1410],[1415,1416,1410],[95,1237,921],[1392,1254,1395],[1360,1359,1267],[1258,1290,1329],[1180,128,1389],[1420,1409,425],[1417,1418,1410],[1418,1415,1410],[1422,1077,1416],[1247,1350,1394],[37,43,1180],[1204,1315,1358],[1428,1383,1375],[1356,1355,1269],[1409,1418,1417],[1302,45,1246],[1421,1416,1415],[1421,1422,1416],[1422,1494,1077],[957,720,938],[1423,1409,1420],[1423,1418,1409],[752,434,1438],[1260,1358,1408],[1363,1385,785],[1423,1426,1418],[1426,1424,1418],[1229,1649,1124],[1222,1260,1350],[1508,1523,1137],[1278,1285,769],[1482,917,144],[1418,1424,1415],[1425,1422,1421],[1425,1524,1422],[1272,1388,1390],[1391,409,1313],[1378,1366,1381],[1371,483,1361],[720,1262,1278],[29,103,159],[1271,1364,1267],[1424,1427,1415],[1537,1522,1518],[134,752,1438],[1420,934,941],[1428,1375,1284],[1277,1224,1831],[1362,1180,1266],[1401,1426,1423],[1577,1369,1291],[268,483,262],[1383,1450,1456],[1384,1175,1431],[1430,1415,1427],[1430,1421,1415],[1430,1425,1421],[1379,1382,1247],[1252,1553,1429],[1206,1392,1395],[1433,1430,1427],[309,208,1353],[1272,1390,1254],[1361,483,1366],[1523,817,808],[1302,1254,1392],[1371,1361,1303],[1426,1435,1424],[1435,1433,1424],[1433,1427,1424],[720,769,1433],[796,1258,1388],[1590,1419,1268],[1289,1372,1371],[1305,1317,1509],[998,1372,1174],[40,1386,139],[1261,1354,703],[1364,1271,1274],[134,1438,1437],[1436,1319,1437],[1317,686,1509],[1484,932,1304],[1434,1432,1509],[1420,65,934],[931,930,736],[1367,1357,1309],[1372,1370,1371],[1204,1208,1315],[1426,938,1435],[1368,1363,1253],[1207,454,1190],[1302,1310,1272],[309,1377,390],[390,1377,1411],[1370,1372,998],[1411,1590,1148],[720,1433,1435],[1450,1383,1428],[1379,678,1382],[1405,678,1379],[1208,1291,1315],[1399,134,1319],[1367,1309,1373],[1373,1352,1276],[596,741,593],[553,1264,612],[1433,1436,1430],[1437,1438,1430],[964,1405,1379],[1373,1309,1352],[1265,1403,1390],[1233,1618,1434],[1365,1310,1302],[789,796,1365],[720,1435,938],[128,139,1389],[1466,933,1525],[1191,1640,1637],[1314,1442,943],[1141,353,1323],[1489,1138,1474],[1462,1477,1440],[1474,1138,1488],[1442,1314,1443],[1446,1030,1546],[1484,1145,697],[1549,1443,1445],[1470,1572,1468],[1397,1239,1507],[1649,1825,1824],[1259,1440,1477],[1451,1450,1449],[978,1446,652],[1454,1456,1451],[1451,1456,1450],[341,1507,595],[933,1547,79],[804,1452,1060],[1454,1455,1456],[1398,1460,1454],[1455,877,1456],[1277,1831,1825],[804,1060,1458],[1339,1459,1595],[1314,1104,1443],[933,1448,1547],[147,1460,1398],[1460,1461,1454],[1454,1461,1455],[1292,1125,1464],[417,1531,1480],[1459,1339,1325],[811,1756,335],[1512,936,1490],[777,1529,1098],[147,1475,1460],[1464,253,1459],[836,855,482],[1487,1486,1307],[1104,1501,1443],[1439,1200,1532],[1475,1469,1460],[1460,1469,1461],[1325,1464,1459],[1277,1825,1649],[1532,1200,1077],[844,877,1455],[1572,933,1466],[1479,568,973],[1509,335,1305],[1339,1595,1759],[1469,1476,1461],[1461,1476,1455],[1104,1470,1468],[1464,1472,253],[1117,1091,1407],[1756,1542,335],[1206,1395,1188],[335,1542,1330],[835,844,1455],[1471,1598,1462],[1491,1442,1441],[835,1455,1476],[1441,1442,1443],[1489,1474,1473],[1251,1236,1250],[1030,1452,1477],[1598,1439,1532],[978,1598,1492],[1426,1401,938],[1448,1584,1482],[1724,1497,1475],[1475,1497,1469],[1484,1535,932],[1307,1486,1113],[1487,696,1495],[1037,1491,1441],[1030,1446,936],[1453,1487,1495],[696,1467,1495],[1138,1489,1483],[1497,1143,1469],[1469,1143,1476],[652,1598,978],[850,1043,1150],[1482,1584,1320],[1731,98,1697],[1113,1554,1573],[1524,1532,1494],[1496,1467,696],[1452,1259,1477],[296,1504,1497],[1504,1143,1497],[1143,1499,1476],[718,910,1498],[868,1540,1528],[817,1253,810],[1490,696,1487],[1440,1491,1037],[1510,676,595],[1488,1492,1517],[781,1239,1397],[1467,1519,1503],[1500,1307,1759],[1149,397,452],[1504,1514,1143],[1514,842,1143],[1125,733,1458],[1503,1531,1555],[1276,1036,1137],[1440,723,1123],[1036,1508,1137],[817,1508,1253],[103,883,1112],[1458,731,1472],[1512,1490,1487],[1487,1453,1486],[1138,978,1488],[1036,1253,1508],[1398,149,147],[1474,1517,1513],[1125,1458,1472],[1486,1453,1554],[1518,1534,758],[345,1058,1062],[928,1202,1369],[1554,1541,1505],[1464,1125,1472],[1504,764,1514],[304,426,573],[1505,742,1506],[1479,1572,1478],[1519,1483,1489],[833,716,1069],[1522,1534,1518],[1115,1513,777],[811,335,1432],[1591,1533,1407],[777,1517,1529],[1513,1517,777],[1498,910,1397],[1069,1539,833],[833,1539,1537],[1522,1551,1534],[1534,1551,1523],[1538,1137,1523],[910,51,1397],[1367,1373,703],[1466,1525,1468],[157,1186,1832],[1429,1511,1506],[1573,1505,1506],[1259,1452,804],[1503,1495,1467],[262,483,780],[1572,1466,1468],[1536,1556,716],[716,1556,1069],[1544,1523,1551],[1544,1538,1523],[1511,1573,1506],[933,1572,1448],[1543,1537,1539],[1537,1543,1522],[1091,933,79],[1519,1540,1545],[1549,1445,86],[1069,1548,1539],[1548,1543,1539],[1543,1551,1522],[1500,1487,1307],[68,784,1186],[1552,1544,1551],[1550,1538,1544],[1538,1550,1137],[1519,1473,1540],[1547,1448,1482],[1560,1563,1536],[1536,1563,1556],[1556,1548,1069],[1543,1558,1551],[1137,1550,1276],[1453,1495,1555],[1561,1543,1548],[1543,1561,1558],[1558,1566,1551],[1552,1550,1544],[1569,1557,1550],[1557,1276,1550],[1276,1557,254],[1531,1503,1480],[1535,1530,1510],[1545,1503,1519],[1547,1482,79],[1566,1552,1551],[1552,1569,1550],[1503,1545,1480],[703,1377,309],[1625,675,756],[1037,1441,88],[929,254,1557],[849,1567,1560],[1556,1564,1548],[1492,1529,1517],[1252,1429,1506],[1553,1027,1429],[1453,1555,1541],[1554,1453,1541],[1233,686,1553],[1328,1104,1314],[1564,1576,1548],[1548,1576,1561],[1557,1562,929],[1520,112,1668],[1483,1446,1138],[778,1570,1567],[1563,1564,1556],[1561,1565,1558],[1565,1566,1558],[1569,1552,1566],[1562,1557,1569],[1530,1535,1484],[1387,1402,1395],[1621,1634,1387],[1567,1568,1560],[1560,1568,1563],[1571,1569,1566],[1344,1330,1542],[1577,1431,1353],[1638,233,304],[1524,1463,1529],[1353,1431,1175],[1077,1200,1413],[1478,1470,1104],[1568,1575,1563],[1563,1575,1564],[1575,1576,1564],[1561,1576,1565],[1565,1574,1566],[1562,1515,929],[1555,96,1541],[1531,417,96],[1555,1531,96],[1246,45,1651],[208,1577,1353],[1586,1568,1567],[1574,1571,1566],[1571,1583,1569],[1474,1513,1528],[1239,1322,1535],[1478,1572,1470],[1570,1586,1567],[1488,1517,1474],[8,1833,1837],[1123,1442,1491],[1589,1568,1586],[1576,1594,1565],[1565,1594,1574],[1562,198,1515],[1559,1441,1549],[1441,1443,1549],[1135,425,1481],[1239,1535,1507],[1595,1487,1500],[1570,1585,1586],[1589,1578,1568],[1568,1578,1575],[1579,1569,1583],[1177,1577,208],[115,1236,110],[1578,1593,1575],[1587,1576,1575],[1576,1581,1594],[1571,1582,1583],[1588,1579,1583],[1579,1580,1562],[1569,1579,1562],[1562,1580,198],[1027,1511,1429],[1589,1593,1578],[1587,1581,1576],[1582,1574,1594],[1574,1582,1571],[1575,1593,1587],[1583,1582,1588],[1580,1590,198],[1587,1593,1581],[1505,1541,96],[1369,1577,1177],[1573,1554,1505],[1479,1478,568],[1585,1589,1586],[1369,1177,704],[766,1584,1334],[977,1257,1059],[1091,1591,1407],[1591,1091,1457],[1585,1604,1589],[1581,1592,1594],[1602,1582,1594],[1582,1608,1588],[1608,1579,1588],[1579,1597,1580],[1419,1590,1580],[1597,1419,1580],[1431,1577,1291],[1589,1604,1593],[1601,1596,1593],[1593,1596,1581],[1306,1511,1027],[1511,1113,1573],[1786,1412,1585],[1412,1604,1585],[1581,1596,1592],[1592,1602,1594],[1608,1599,1579],[1599,1611,1579],[1579,1611,1597],[1512,1487,253],[1519,1489,1473],[1545,1540,868],[1083,1187,1402],[1117,1407,1400],[1292,733,1125],[284,1240,1245],[1604,1600,1593],[1600,1601,1593],[1582,1607,1608],[789,1369,704],[1467,1483,1519],[1601,1613,1596],[1596,1613,1592],[1602,1607,1582],[1620,1553,1252],[1601,1605,1613],[1592,1613,1602],[1602,1606,1607],[1608,1609,1599],[1599,1609,1611],[1603,1597,1611],[1265,1419,1597],[1603,1265,1597],[1392,1206,45],[928,1369,789],[1474,1528,1473],[1104,1468,1501],[1412,1521,1604],[1613,1631,1602],[1607,1610,1608],[1608,1610,1609],[1476,863,835],[1495,1503,1555],[1498,1397,718],[1520,1668,7],[1604,1615,1600],[1605,1601,1600],[1602,1631,1606],[1606,1610,1607],[1759,1595,1500],[1292,1298,733],[1615,1604,1521],[1609,1603,1611],[652,1462,1598],[1468,1525,1445],[1443,1501,1445],[1134,1723,150],[1521,1622,1615],[1615,1616,1600],[1616,1605,1600],[1605,1616,1612],[1605,1612,1613],[1612,1617,1613],[1613,1617,1631],[1606,1614,1610],[1265,1603,1403],[448,417,1480],[1595,253,1487],[1501,1468,1445],[1383,1456,877],[1490,1496,696],[1610,1627,1609],[1627,1621,1609],[1591,1481,1533],[1598,1471,1439],[1353,1261,703],[1606,1631,1614],[1609,1621,1403],[1532,1077,1494],[1528,1115,513],[1546,652,1446],[1211,928,1365],[1540,1473,1528],[1078,1502,1787],[1425,1430,1438],[1617,1630,1631],[959,749,944],[566,570,603],[1716,310,1521],[775,452,397],[1615,1636,1616],[1616,1636,1612],[1610,1632,1627],[789,704,1258],[1457,1481,1591],[1769,1756,811],[207,1629,722],[1629,1625,722],[1224,1277,1622],[1622,1636,1615],[1636,1646,1612],[1612,1630,1617],[1631,1626,1614],[1614,1632,1610],[1506,104,95],[1481,1457,1136],[1123,943,1442],[936,1446,1496],[1499,863,1476],[1629,1031,1625],[1233,1509,686],[1633,1634,1621],[1621,1387,1403],[1472,1512,253],[1177,208,704],[1277,1636,1622],[1626,1632,1614],[1627,1633,1621],[936,1496,1490],[185,1454,1451],[731,936,1512],[1638,1635,207],[553,1263,1264],[1653,1212,1639],[1633,1627,1632],[1633,1387,1634],[1458,1060,731],[368,1307,1113],[1264,1031,1629],[1152,850,1150],[1277,1644,1636],[1646,1637,1612],[1637,1630,1612],[1647,1631,1630],[1647,1626,1631],[1422,1524,1494],[1030,652,1546],[1635,1629,207],[1635,1264,1629],[1639,1646,1636],[1637,1640,1630],[1641,1632,1626],[1632,1642,1633],[1633,1643,1387],[842,1499,1143],[865,863,1499],[1516,978,1492],[67,1130,784],[1103,1505,96],[88,1441,1200],[1644,1639,1636],[1640,1647,1630],[1647,1641,1626],[1633,1648,1643],[1492,1532,1524],[1488,1516,1492],[1037,1471,1462],[612,1264,1635],[1502,1078,1124],[1641,1642,1632],[1648,1633,1642],[1528,513,868],[1492,1598,1532],[1095,991,760],[679,157,1664],[760,1128,1785],[1277,1650,1644],[320,1022,244],[1559,1549,86],[1676,1520,7],[1488,978,1516],[1095,760,1785],[1128,384,1120],[304,312,1638],[1081,1638,312],[1081,1635,1638],[103,612,1635],[652,1477,1462],[1650,1645,1644],[1645,1639,1644],[1639,1637,1646],[1640,1090,1647],[1654,1641,1647],[1654,1642,1641],[1654,1648,1642],[1643,1402,1387],[1432,335,1509],[384,1128,760],[1652,312,304],[103,1243,612],[1277,1649,1650],[1090,1654,1647],[1643,1648,1402],[1134,324,1675],[679,68,157],[1652,1081,312],[1136,301,803],[1653,1639,1645],[723,1440,1259],[803,854,1136],[104,1506,742],[1112,159,103],[1654,1083,1648],[977,1651,1257],[1397,1507,718],[1081,103,1635],[1650,677,1645],[1083,1402,1648],[1706,1655,1671],[1624,1704,1711],[767,2,1],[608,794,294],[1678,1683,1686],[767,1682,2],[1669,1692,1675],[296,1681,764],[1671,1656,1672],[17,1673,1679],[1706,1671,1673],[1662,1674,1699],[1655,1657,1656],[418,84,915],[1526,1514,764],[1658,1657,567],[870,1695,764],[813,1697,98],[1659,821,5],[60,1013,848],[1013,110,1213],[661,1038,1692],[1660,1703,17],[1693,1673,17],[1663,1715,1743],[1013,115,110],[344,1733,32],[1670,1663,1743],[1670,1743,1738],[1677,1670,1738],[1661,4,3],[1084,1683,1678],[1728,793,1130],[1683,1767,1196],[1677,1738,1196],[1279,1786,853],[294,1038,608],[1279,1689,1786],[870,18,1708],[870,1680,1695],[1705,10,1670],[1084,1767,1683],[1196,1738,1686],[1750,870,1681],[1750,18,870],[1773,1703,1660],[1135,47,425],[150,323,1134],[1707,1655,1706],[1741,344,1687],[1685,1691,1684],[1684,1691,802],[1672,1656,0],[1038,124,608],[1671,1672,1690],[1628,1218,1767],[1686,1275,1667],[1493,1750,1681],[1773,18,1750],[1773,1660,18],[1679,1671,16],[1735,1706,1673],[1667,1678,1686],[1688,1658,1],[1656,1688,0],[1293,1281,1458],[1698,1678,1667],[1696,1130,1722],[1698,1667,1696],[1715,1662,1699],[1692,1038,294],[1682,767,357],[1669,661,1692],[802,1702,824],[1028,1067,1784],[822,1624,778],[119,813,861],[1218,1670,1677],[1703,1693,17],[1658,1710,1],[750,1730,1729],[1701,750,1729],[1693,1735,1673],[1731,1694,98],[1691,1702,802],[783,1729,1719],[1680,870,1708],[1707,1709,1655],[533,756,675],[1691,1210,1702],[11,1705,1670],[1767,1218,1196],[1218,1677,1196],[1664,1716,1721],[1729,1725,1719],[1729,1072,1725],[1210,1116,1702],[1702,1720,824],[1682,1661,2],[1713,1719,1721],[1716,1786,1713],[1730,1722,1072],[294,1717,1811],[1692,294,1666],[1659,680,821],[824,1720,1714],[1726,1731,1718],[345,1062,1045],[1738,1743,1275],[1075,1089,1071],[783,1719,1689],[1275,684,1728],[1692,1666,1665],[1675,1692,1665],[294,1811,1666],[1716,1664,310],[1678,1698,1700],[6,9,1727],[676,649,595],[381,31,361],[1723,1804,1772],[1727,9,1694],[1720,1089,1714],[1786,1716,1412],[1683,1196,1686],[1718,1697,1085],[1116,1739,1702],[1739,1734,1720],[1702,1739,1720],[1089,1720,1734],[509,748,1745],[1743,1715,1726],[1717,294,794],[1116,1732,1739],[1718,1731,1697],[1696,1667,1130],[1134,1665,1723],[1694,712,98],[101,1687,102],[391,1736,101],[662,636,642],[1734,1447,1089],[1089,1447,1071],[436,99,493],[1689,1279,783],[1485,1465,1342],[1736,1687,101],[344,1741,1733],[1741,1742,1733],[1735,829,1706],[829,1707,1706],[1485,1332,1465],[952,1126,1742],[1747,1447,1734],[879,892,645],[1730,1146,1696],[829,1709,1707],[1709,1712,1655],[118,1739,1732],[1332,1744,1465],[1687,1749,1741],[1741,1758,1742],[679,1072,68],[1072,1722,68],[118,1747,1739],[1747,1734,1739],[1465,1744,1736],[1736,1740,1687],[1704,1701,783],[1665,624,1723],[1722,1130,67],[1025,1055,467],[1444,14,1701],[558,522,530],[1657,1658,1688],[1339,1746,1332],[1332,1748,1744],[1687,1740,1749],[1741,1749,1758],[1109,952,1742],[1747,118,141],[1671,1690,1628],[1671,1628,16],[1657,1688,1656],[1745,748,1447],[357,767,1710],[1746,1748,1332],[1146,1700,1698],[1759,1307,1338],[1239,781,1322],[1745,1447,1747],[522,1745,1747],[316,717,595],[148,1493,1724],[1758,1109,1742],[1725,1072,679],[726,719,1661],[1695,1680,1526],[1772,1750,1493],[148,1772,1493],[1542,1751,1101],[952,1109,1086],[1744,1752,1736],[1736,1752,1740],[1753,1755,1740],[391,1342,1736],[821,112,1520],[557,530,1747],[530,522,1747],[994,879,645],[1542,1756,1751],[1813,1693,1703],[1746,1754,1748],[1748,1764,1744],[1752,1757,1740],[1740,1757,1753],[1749,1740,1755],[1755,1763,1749],[1763,1758,1749],[1275,1743,684],[1813,1735,1693],[1107,1099,1101],[1723,624,1804],[1403,1603,1609],[1748,1754,1764],[1744,1757,1752],[1760,1109,1758],[1465,1736,1342],[436,115,99],[1686,1738,1275],[1751,1766,1101],[1759,1754,1746],[1755,1753,1763],[1570,1279,853],[1701,1146,750],[1655,1656,1671],[11,1670,1218],[1761,1751,1756],[1766,1107,1101],[1726,1623,1731],[1711,1704,1279],[67,784,68],[558,530,545],[1620,1618,1233],[1769,1761,1756],[102,1687,344],[1338,1754,1759],[1754,232,1764],[1744,1765,1757],[1757,1763,1753],[1762,1760,1758],[1760,1771,1109],[1339,1759,1746],[1675,1665,1134],[1730,1696,1722],[1774,1751,1761],[1766,1780,1107],[1780,1105,1107],[1764,1765,1744],[1763,1762,1758],[1772,1773,1750],[1811,1813,1703],[1434,1769,1432],[1780,1766,1751],[232,1781,1764],[1711,1279,1570],[1688,1,0],[1774,1780,1751],[1764,1781,1765],[1765,1768,1757],[1757,1768,1763],[1777,1782,1760],[1762,1777,1760],[1769,1774,1761],[1763,1777,1762],[1760,1782,1771],[232,1737,1781],[1768,1776,1763],[272,255,774],[1669,994,661],[1618,1769,1434],[1765,589,1768],[1770,1777,1763],[1701,1729,783],[1783,1774,1769],[1789,1780,1774],[589,1775,1768],[1776,1770,1763],[1782,1778,1771],[1771,1778,1070],[624,1703,1773],[624,1811,1703],[1620,1244,1618],[1779,1769,1618],[1779,1783,1769],[739,1735,1813],[1775,1776,1768],[1790,1777,1770],[1777,1778,1782],[1725,679,1721],[733,1293,1458],[1802,1618,1244],[1802,1779,1618],[1788,1783,1779],[1789,1774,1783],[1796,1780,1789],[1796,1119,1780],[1823,1817,325],[1699,1727,1623],[750,1146,1730],[1497,1724,296],[1128,1119,1796],[61,62,71],[1131,413,824],[1114,1111,249],[1784,1776,1775],[1123,723,1283],[1791,1788,1779],[1788,1789,1783],[1095,1797,1074],[1028,1784,1775],[1784,1770,1776],[1777,1790,1778],[1793,1797,1095],[1797,1800,1074],[1798,1790,1770],[1805,1802,1244],[1802,1791,1779],[1792,1789,1788],[1793,1785,1128],[1793,1095,1785],[1074,1800,1619],[741,457,593],[1798,1770,1784],[1798,1794,1790],[1786,1689,1713],[684,1726,1718],[1728,1085,793],[1795,1787,1502],[1806,1802,1805],[1819,1788,1791],[1067,1798,1784],[1790,1794,1778],[1795,1502,1124],[1801,1805,1787],[1807,1791,1802],[1807,1819,1791],[1819,1792,1788],[1799,1128,1796],[994,645,661],[684,1085,1728],[684,1718,1085],[1699,1623,1726],[1801,1787,1795],[1808,1789,1792],[1808,1796,1789],[1799,1793,1128],[1809,1797,1793],[1809,1803,1797],[1803,1800,1797],[1067,1794,1798],[774,255,1778],[1673,1671,1679],[879,1669,888],[19,1807,1802],[1810,1619,1800],[879,994,1669],[1794,774,1778],[1723,1772,148],[1804,1773,1772],[1814,1795,1124],[1649,1814,1124],[1814,1801,1795],[1812,1806,1805],[19,1802,1806],[19,1819,1807],[1810,1800,1803],[1804,624,1773],[1714,1131,824],[1801,1812,1805],[1812,19,1806],[1808,1792,1819],[1799,1809,1793],[1821,1810,1803],[1717,739,1813],[1061,1619,1822],[1794,1817,774],[79,1482,144],[1815,1801,1814],[23,1819,19],[589,1028,1775],[1817,1823,774],[1689,1719,1713],[1824,1814,1649],[1827,1818,1801],[1818,1812,1801],[1818,19,1812],[1818,20,19],[1816,1809,1799],[1821,1803,1809],[1822,1619,1810],[124,708,608],[1663,10,1715],[1815,1827,1801],[1820,1808,1819],[23,1820,1819],[603,1810,1821],[603,1822,1810],[1085,1697,793],[1628,1690,11],[1527,1704,1624],[1730,1072,1729],[1526,1444,1704],[1526,1680,1444],[1704,1444,1701],[1816,1821,1809],[1722,67,68],[317,272,1823],[1716,1713,1721],[16,1628,1767],[1527,1526,1704],[1824,1826,1814],[1814,1826,1815],[1818,21,20],[1835,1808,1820],[603,570,1822],[226,1070,1778],[1013,1181,1179],[1721,679,1664],[1717,1813,1811],[1828,1827,1815],[22,1820,23],[22,1835,1820],[1830,603,1821],[719,1659,5],[643,567,1657],[1717,794,739],[1825,1826,1824],[1828,1815,1826],[1829,21,1818],[1808,1835,13],[4,719,5],[10,1662,1715],[1828,1832,1827],[1832,1818,1827],[12,1833,1816],[1833,1821,1816],[1833,1830,1821],[14,1146,1701],[1186,1829,1818],[1280,603,1830],[14,1700,1146],[1667,1728,1130],[1825,1834,1826],[1834,1828,1826],[1832,1186,1818],[1836,13,1835],[1624,1711,1570],[778,1624,1570],[1719,1725,1721],[1002,1825,1831],[1002,1834,1825],[1834,1832,1828],[1186,21,1829],[1836,1835,22],[1837,1833,12],[1280,1830,1833],[1667,1275,1728],[16,1767,1084],[589,1765,1838],[1765,1781,1838],[1781,1737,1838],[1737,982,1838],[982,1053,1838],[1053,816,1838],[816,589,1838]]
},{}]},{},[]),require=function(e,t,r){function n(r,o){if(!t[r]){if(!e[r]){var a="function"==typeof require&&require;if(!o&&a)return a(r,!0);if(i)return i(r,!0);throw Error("Cannot find module '"+r+"'")}var s=t[r]={exports:{}};e[r][0].call(s.exports,function(t){var i=e[r][1][t];return n(i?i:t)},s,s.exports)}return t[r].exports}for(var i="function"==typeof require&&require,o=0;r.length>o;o++)n(r[o]);return n}({"mesh-viewer":[function(e,t){t.exports=e("YaF58l")},{}],YaF58l:[function(e,t){"use strict";function r(e,t,r){this.shell=e,this.mesh=t,this.modelMatrix=r}function n(e){function t(t){var i=a(n.gl,{cells:t.cells,positions:t.positions,vertexColors:t.vertexColors,cellColors:t.cellColors,meshColor:t.meshColor||e.meshColor,vertexNormals:t.vertexNormals,cellNormals:t.cellNormals,useCellNormals:t.useCellNormals||e.useCellNormals,pointSizes:t.pointSizes,pointSize:t.pointSize||e.pointSize});return new r(n,i,t.model||u.identity(u.create()))}e=e||{};var n=i(e),s=o(n);return n.camera=s,n.fov=e.fov||Math.PI/4,n.zNear=e.zNear||.1,n.zFar=e.zFar||1e3,n.createMesh=t,n.on("gl-init",function(){var e=n.gl;e.enable(e.DEPTH_TEST),n.emit("viewer-init")}),n._defaultOptions=e,n}var i=e("gl-now"),o=e("game-shell-orbit-camera"),a=e("gl-simplicial-complex"),s=e("gl-matrix"),u=s.mat4;r.prototype.update=function(e){var t=shell._defaultOptions;this.mesh.update({cells:e.cells,positions:e.positions,vertexColors:e.vertexColors,cellColors:e.cellColors,meshColor:e.meshColor||t.meshColor,vertexNormals:e.vertexNormals,cellNormals:e.cellNormals,useFacetNormals:e.useFacetNormals||t.useFacetNormals,pointSizes:e.pointSizes,pointSize:e.pointSize||t.pointSize})},r.prototype.draw=function(e){e=e||{};var t=this.shell;this.mesh.draw({model:e.model||this.modelMatrix,projection:e.projection||u.perspective(u.create(),t.fov,t.width/t.height,t.zNear,t.zFar),view:e.view||t.camera.view(),lightPosition:e.lightPosition||t._defaultOptions.lightPosition,ambient:e.ambient||t._defaultOptions.ambient,diffuse:e.diffuse||t._defaultOptions.diffuse,specular:e.specular||t._defaultOptions.specular,specularExponent:e.specularExponent||t._defaultOptions.specularExponent})},r.prototype.dispose=function(){this.mesh.dispose()},t.exports=n},{"game-shell-orbit-camera":1,"gl-simplicial-complex":2,"gl-matrix":3,"gl-now":4}],3:[function(e,t,r){(function(){(function(){"use strict";var e={};r===void 0?"function"==typeof define&&"object"==typeof define.amd&&define.amd?(e.exports={},define(function(){return e.exports})):e.exports=window:e.exports=r,function(e){var t={};if(!r)var r=1e-6;t.create=function(){return new Float32Array(2)},t.clone=function(e){var t=new Float32Array(2);return t[0]=e[0],t[1]=e[1],t},t.fromValues=function(e,t){var r=new Float32Array(2);return r[0]=e,r[1]=t,r},t.copy=function(e,t){return e[0]=t[0],e[1]=t[1],e},t.set=function(e,t,r){return e[0]=t,e[1]=r,e},t.add=function(e,t,r){return e[0]=t[0]+r[0],e[1]=t[1]+r[1],e},t.sub=t.subtract=function(e,t,r){return e[0]=t[0]-r[0],e[1]=t[1]-r[1],e},t.mul=t.multiply=function(e,t,r){return e[0]=t[0]*r[0],e[1]=t[1]*r[1],e},t.div=t.divide=function(e,t,r){return e[0]=t[0]/r[0],e[1]=t[1]/r[1],e},t.min=function(e,t,r){return e[0]=Math.min(t[0],r[0]),e[1]=Math.min(t[1],r[1]),e},t.max=function(e,t,r){return e[0]=Math.max(t[0],r[0]),e[1]=Math.max(t[1],r[1]),e},t.scale=function(e,t,r){return e[0]=t[0]*r,e[1]=t[1]*r,e},t.dist=t.distance=function(e,t){var r=t[0]-e[0],n=t[1]-e[1];return Math.sqrt(r*r+n*n)},t.sqrDist=t.squaredDistance=function(e,t){var r=t[0]-e[0],n=t[1]-e[1];return r*r+n*n},t.len=t.length=function(e){var t=e[0],r=e[1];return Math.sqrt(t*t+r*r)},t.sqrLen=t.squaredLength=function(e){var t=e[0],r=e[1];return t*t+r*r},t.negate=function(e,t){return e[0]=-t[0],e[1]=-t[1],e},t.normalize=function(e,t){var r=t[0],n=t[1],i=r*r+n*n;return i>0&&(i=1/Math.sqrt(i),e[0]=t[0]*i,e[1]=t[1]*i),e},t.dot=function(e,t){return e[0]*t[0]+e[1]*t[1]},t.cross=function(e,t,r){var n=t[0]*r[1]-t[1]*r[0];return e[0]=e[1]=0,e[2]=n,e},t.lerp=function(e,t,r,n){var i=t[0],o=t[1];return e[0]=i+n*(r[0]-i),e[1]=o+n*(r[1]-o),e},t.transformMat2=function(e,t,r){var n=t[0],i=t[1];return e[0]=n*r[0]+i*r[1],e[1]=n*r[2]+i*r[3],e},t.forEach=function(){var e=new Float32Array(2);return function(t,r,n,i,o,a){var s,u;for(r||(r=2),n||(n=0),u=i?Math.min(i*r+n,t.length):t.length,s=n;u>s;s+=r)e[0]=t[s],e[1]=t[s+1],o(e,e,a),t[s]=e[0],t[s+1]=e[1];return t}}(),t.str=function(e){return"vec2("+e[0]+", "+e[1]+")"},e!==void 0&&(e.vec2=t);var n={};if(!r)var r=1e-6;n.create=function(){return new Float32Array(3)},n.clone=function(e){var t=new Float32Array(3);return t[0]=e[0],t[1]=e[1],t[2]=e[2],t},n.fromValues=function(e,t,r){var n=new Float32Array(3);return n[0]=e,n[1]=t,n[2]=r,n},n.copy=function(e,t){return e[0]=t[0],e[1]=t[1],e[2]=t[2],e},n.set=function(e,t,r,n){return e[0]=t,e[1]=r,e[2]=n,e},n.add=function(e,t,r){return e[0]=t[0]+r[0],e[1]=t[1]+r[1],e[2]=t[2]+r[2],e},n.sub=n.subtract=function(e,t,r){return e[0]=t[0]-r[0],e[1]=t[1]-r[1],e[2]=t[2]-r[2],e},n.mul=n.multiply=function(e,t,r){return e[0]=t[0]*r[0],e[1]=t[1]*r[1],e[2]=t[2]*r[2],e},n.div=n.divide=function(e,t,r){return e[0]=t[0]/r[0],e[1]=t[1]/r[1],e[2]=t[2]/r[2],e},n.min=function(e,t,r){return e[0]=Math.min(t[0],r[0]),e[1]=Math.min(t[1],r[1]),e[2]=Math.min(t[2],r[2]),e},n.max=function(e,t,r){return e[0]=Math.max(t[0],r[0]),e[1]=Math.max(t[1],r[1]),e[2]=Math.max(t[2],r[2]),e},n.scale=function(e,t,r){return e[0]=t[0]*r,e[1]=t[1]*r,e[2]=t[2]*r,e},n.dist=n.distance=function(e,t){var r=t[0]-e[0],n=t[1]-e[1],i=t[2]-e[2];return Math.sqrt(r*r+n*n+i*i)},n.sqrDist=n.squaredDistance=function(e,t){var r=t[0]-e[0],n=t[1]-e[1],i=t[2]-e[2];return r*r+n*n+i*i},n.len=n.length=function(e){var t=e[0],r=e[1],n=e[2];return Math.sqrt(t*t+r*r+n*n)},n.sqrLen=n.squaredLength=function(e){var t=e[0],r=e[1],n=e[2];return t*t+r*r+n*n},n.negate=function(e,t){return e[0]=-t[0],e[1]=-t[1],e[2]=-t[2],e},n.normalize=function(e,t){var r=t[0],n=t[1],i=t[2],o=r*r+n*n+i*i;return o>0&&(o=1/Math.sqrt(o),e[0]=t[0]*o,e[1]=t[1]*o,e[2]=t[2]*o),e},n.dot=function(e,t){return e[0]*t[0]+e[1]*t[1]+e[2]*t[2]},n.cross=function(e,t,r){var n=t[0],i=t[1],o=t[2],a=r[0],s=r[1],u=r[2];return e[0]=i*u-o*s,e[1]=o*a-n*u,e[2]=n*s-i*a,e},n.lerp=function(e,t,r,n){var i=t[0],o=t[1],a=t[2];return e[0]=i+n*(r[0]-i),e[1]=o+n*(r[1]-o),e[2]=a+n*(r[2]-a),e},n.transformMat4=function(e,t,r){var n=t[0],i=t[1],o=t[2];return e[0]=r[0]*n+r[4]*i+r[8]*o+r[12],e[1]=r[1]*n+r[5]*i+r[9]*o+r[13],e[2]=r[2]*n+r[6]*i+r[10]*o+r[14],e},n.transformQuat=function(e,t,r){var n=t[0],i=t[1],o=t[2],a=r[0],s=r[1],u=r[2],l=r[3],c=l*n+s*o-u*i,f=l*i+u*n-a*o,h=l*o+a*i-s*n,p=-a*n-s*i-u*o;return e[0]=c*l+p*-a+f*-u-h*-s,e[1]=f*l+p*-s+h*-a-c*-u,e[2]=h*l+p*-u+c*-s-f*-a,e},n.forEach=function(){var e=new Float32Array(3);return function(t,r,n,i,o,a){var s,u;for(r||(r=3),n||(n=0),u=i?Math.min(i*r+n,t.length):t.length,s=n;u>s;s+=r)e[0]=t[s],e[1]=t[s+1],e[2]=t[s+2],o(e,e,a),t[s]=e[0],t[s+1]=e[1],t[s+2]=e[2];return t}}(),n.str=function(e){return"vec3("+e[0]+", "+e[1]+", "+e[2]+")"},e!==void 0&&(e.vec3=n);var i={};if(!r)var r=1e-6;i.create=function(){return new Float32Array(4)},i.clone=function(e){var t=new Float32Array(4);return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t},i.fromValues=function(e,t,r,n){var i=new Float32Array(4);return i[0]=e,i[1]=t,i[2]=r,i[3]=n,i},i.copy=function(e,t){return e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e},i.set=function(e,t,r,n,i){return e[0]=t,e[1]=r,e[2]=n,e[3]=i,e},i.add=function(e,t,r){return e[0]=t[0]+r[0],e[1]=t[1]+r[1],e[2]=t[2]+r[2],e[3]=t[3]+r[3],e},i.sub=i.subtract=function(e,t,r){return e[0]=t[0]-r[0],e[1]=t[1]-r[1],e[2]=t[2]-r[2],e[3]=t[3]-r[3],e},i.mul=i.multiply=function(e,t,r){return e[0]=t[0]*r[0],e[1]=t[1]*r[1],e[2]=t[2]*r[2],e[3]=t[3]*r[3],e},i.div=i.divide=function(e,t,r){return e[0]=t[0]/r[0],e[1]=t[1]/r[1],e[2]=t[2]/r[2],e[3]=t[3]/r[3],e},i.min=function(e,t,r){return e[0]=Math.min(t[0],r[0]),e[1]=Math.min(t[1],r[1]),e[2]=Math.min(t[2],r[2]),e[3]=Math.min(t[3],r[3]),e},i.max=function(e,t,r){return e[0]=Math.max(t[0],r[0]),e[1]=Math.max(t[1],r[1]),e[2]=Math.max(t[2],r[2]),e[3]=Math.max(t[3],r[3]),e},i.scale=function(e,t,r){return e[0]=t[0]*r,e[1]=t[1]*r,e[2]=t[2]*r,e[3]=t[3]*r,e},i.dist=i.distance=function(e,t){var r=t[0]-e[0],n=t[1]-e[1],i=t[2]-e[2],o=t[3]-e[3];return Math.sqrt(r*r+n*n+i*i+o*o)},i.sqrDist=i.squaredDistance=function(e,t){var r=t[0]-e[0],n=t[1]-e[1],i=t[2]-e[2],o=t[3]-e[3];return r*r+n*n+i*i+o*o},i.len=i.length=function(e){var t=e[0],r=e[1],n=e[2],i=e[3];return Math.sqrt(t*t+r*r+n*n+i*i)},i.sqrLen=i.squaredLength=function(e){var t=e[0],r=e[1],n=e[2],i=e[3];return t*t+r*r+n*n+i*i},i.negate=function(e,t){return e[0]=-t[0],e[1]=-t[1],e[2]=-t[2],e[3]=-t[3],e},i.normalize=function(e,t){var r=t[0],n=t[1],i=t[2],o=t[3],a=r*r+n*n+i*i+o*o;return a>0&&(a=1/Math.sqrt(a),e[0]=t[0]*a,e[1]=t[1]*a,e[2]=t[2]*a,e[3]=t[3]*a),e},i.dot=function(e,t){return e[0]*t[0]+e[1]*t[1]+e[2]*t[2]+e[3]*t[3]},i.lerp=function(e,t,r,n){var i=t[0],o=t[1],a=t[2],s=t[3];return e[0]=i+n*(r[0]-i),e[1]=o+n*(r[1]-o),e[2]=a+n*(r[2]-a),e[3]=s+n*(r[3]-s),e},i.transformMat4=function(e,t,r){var n=t[0],i=t[1],o=t[2],a=t[3];return e[0]=r[0]*n+r[4]*i+r[8]*o+r[12]*a,e[1]=r[1]*n+r[5]*i+r[9]*o+r[13]*a,e[2]=r[2]*n+r[6]*i+r[10]*o+r[14]*a,e[3]=r[3]*n+r[7]*i+r[11]*o+r[15]*a,e},i.transformQuat=function(e,t,r){var n=t[0],i=t[1],o=t[2],a=r[0],s=r[1],u=r[2],l=r[3],c=l*n+s*o-u*i,f=l*i+u*n-a*o,h=l*o+a*i-s*n,p=-a*n-s*i-u*o;return e[0]=c*l+p*-a+f*-u-h*-s,e[1]=f*l+p*-s+h*-a-c*-u,e[2]=h*l+p*-u+c*-s-f*-a,e},i.forEach=function(){var e=new Float32Array(4);return function(t,r,n,i,o,a){var s,u;for(r||(r=4),n||(n=0),u=i?Math.min(i*r+n,t.length):t.length,s=n;u>s;s+=r)e[0]=t[s],e[1]=t[s+1],e[2]=t[s+2],e[3]=t[s+3],o(e,e,a),t[s]=e[0],t[s+1]=e[1],t[s+2]=e[2],t[s+3]=e[3];return t}}(),i.str=function(e){return"vec4("+e[0]+", "+e[1]+", "+e[2]+", "+e[3]+")"},e!==void 0&&(e.vec4=i);var o={},a=new Float32Array([1,0,0,1]);if(!r)var r=1e-6;o.create=function(){return new Float32Array(a)},o.clone=function(e){var t=new Float32Array(4);return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t},o.copy=function(e,t){return e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e},o.identity=function(e){return e[0]=1,e[1]=0,e[2]=0,e[3]=1,e},o.transpose=function(e,t){if(e===t){var r=t[1];e[1]=t[2],e[2]=r}else e[0]=t[0],e[1]=t[2],e[2]=t[1],e[3]=t[3];return e},o.invert=function(e,t){var r=t[0],n=t[1],i=t[2],o=t[3],a=r*o-i*n;return a?(a=1/a,e[0]=o*a,e[1]=-n*a,e[2]=-i*a,e[3]=r*a,e):null},o.adjoint=function(e,t){var r=t[0];return e[0]=t[3],e[1]=-t[1],e[2]=-t[2],e[3]=r,e},o.determinant=function(e){return e[0]*e[3]-e[2]*e[1]},o.mul=o.multiply=function(e,t,r){var n=t[0],i=t[1],o=t[2],a=t[3],s=r[0],u=r[1],l=r[2],c=r[3];return e[0]=n*s+i*l,e[1]=n*u+i*c,e[2]=o*s+a*l,e[3]=o*u+a*c,e},o.rotate=function(e,t,r){var n=t[0],i=t[1],o=t[2],a=t[3],s=Math.sin(r),u=Math.cos(r);return e[0]=n*u+i*s,e[1]=n*-s+i*u,e[2]=o*u+a*s,e[3]=o*-s+a*u,e},o.scale=function(e,t,r){var n=t[0],i=t[1],o=t[2],a=t[3],s=r[0],u=r[1];return e[0]=n*s,e[1]=i*u,e[2]=o*s,e[3]=a*u,e},o.str=function(e){return"mat2("+e[0]+", "+e[1]+", "+e[2]+", "+e[3]+")"},e!==void 0&&(e.mat2=o);var s={},u=new Float32Array([1,0,0,0,1,0,0,0,1]);if(!r)var r=1e-6;s.create=function(){return new Float32Array(u)},s.clone=function(e){var t=new Float32Array(9);return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t[4]=e[4],t[5]=e[5],t[6]=e[6],t[7]=e[7],t[8]=e[8],t},s.copy=function(e,t){return e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e[4]=t[4],e[5]=t[5],e[6]=t[6],e[7]=t[7],e[8]=t[8],e},s.identity=function(e){return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=1,e[5]=0,e[6]=0,e[7]=0,e[8]=1,e},s.transpose=function(e,t){if(e===t){var r=t[1],n=t[2],i=t[5];e[1]=t[3],e[2]=t[6],e[3]=r,e[5]=t[7],e[6]=n,e[7]=i}else e[0]=t[0],e[1]=t[3],e[2]=t[6],e[3]=t[1],e[4]=t[4],e[5]=t[7],e[6]=t[2],e[7]=t[5],e[8]=t[8];return e},s.invert=function(e,t){var r=t[0],n=t[1],i=t[2],o=t[3],a=t[4],s=t[5],u=t[6],l=t[7],c=t[8],f=c*a-s*l,h=-c*o+s*u,p=l*o-a*u,d=r*f+n*h+i*p;return d?(d=1/d,e[0]=f*d,e[1]=(-c*n+i*l)*d,e[2]=(s*n-i*a)*d,e[3]=h*d,e[4]=(c*r-i*u)*d,e[5]=(-s*r+i*o)*d,e[6]=p*d,e[7]=(-l*r+n*u)*d,e[8]=(a*r-n*o)*d,e):null},s.adjoint=function(e,t){var r=t[0],n=t[1],i=t[2],o=t[3],a=t[4],s=t[5],u=t[6],l=t[7],c=t[8];return e[0]=a*c-s*l,e[1]=i*l-n*c,e[2]=n*s-i*a,e[3]=s*u-o*c,e[4]=r*c-i*u,e[5]=i*o-r*s,e[6]=o*l-a*u,e[7]=n*u-r*l,e[8]=r*a-n*o,e},s.determinant=function(e){var t=e[0],r=e[1],n=e[2],i=e[3],o=e[4],a=e[5],s=e[6],u=e[7],l=e[8];return t*(l*o-a*u)+r*(-l*i+a*s)+n*(u*i-o*s)},s.mul=s.multiply=function(e,t,r){var n=t[0],i=t[1],o=t[2],a=t[3],s=t[4],u=t[5],l=t[6],c=t[7],f=t[8],h=r[0],p=r[1],d=r[2],g=r[3],v=r[4],m=r[5],y=r[6],_=r[7],b=r[8];return e[0]=h*n+p*a+d*l,e[1]=h*i+p*s+d*c,e[2]=h*o+p*u+d*f,e[3]=g*n+v*a+m*l,e[4]=g*i+v*s+m*c,e[5]=g*o+v*u+m*f,e[6]=y*n+_*a+b*l,e[7]=y*i+_*s+b*c,e[8]=y*o+_*u+b*f,e},s.str=function(e){return"mat3("+e[0]+", "+e[1]+", "+e[2]+", "+e[3]+", "+e[4]+", "+e[5]+", "+e[6]+", "+e[7]+", "+e[8]+")"},e!==void 0&&(e.mat3=s);var l={},c=new Float32Array([1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1]);if(!r)var r=1e-6;l.create=function(){return new Float32Array(c)},l.clone=function(e){var t=new Float32Array(16);return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t[4]=e[4],t[5]=e[5],t[6]=e[6],t[7]=e[7],t[8]=e[8],t[9]=e[9],t[10]=e[10],t[11]=e[11],t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15],t},l.copy=function(e,t){return e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e[4]=t[4],e[5]=t[5],e[6]=t[6],e[7]=t[7],e[8]=t[8],e[9]=t[9],e[10]=t[10],e[11]=t[11],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15],e},l.identity=function(e){return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e},l.transpose=function(e,t){if(e===t){var r=t[1],n=t[2],i=t[3],o=t[6],a=t[7],s=t[11];e[1]=t[4],e[2]=t[8],e[3]=t[12],e[4]=r,e[6]=t[9],e[7]=t[13],e[8]=n,e[9]=o,e[11]=t[14],e[12]=i,e[13]=a,e[14]=s}else e[0]=t[0],e[1]=t[4],e[2]=t[8],e[3]=t[12],e[4]=t[1],e[5]=t[5],e[6]=t[9],e[7]=t[13],e[8]=t[2],e[9]=t[6],e[10]=t[10],e[11]=t[14],e[12]=t[3],e[13]=t[7],e[14]=t[11],e[15]=t[15];return e},l.invert=function(e,t){var r=t[0],n=t[1],i=t[2],o=t[3],a=t[4],s=t[5],u=t[6],l=t[7],c=t[8],f=t[9],h=t[10],p=t[11],d=t[12],g=t[13],v=t[14],m=t[15],y=r*s-n*a,_=r*u-i*a,b=r*l-o*a,w=n*u-i*s,x=n*l-o*s,A=i*l-o*u,k=c*g-f*d,j=c*v-h*d,E=c*m-p*d,M=f*v-h*g,F=f*m-p*g,L=h*m-p*v,C=y*L-_*F+b*M+w*E-x*j+A*k;return C?(C=1/C,e[0]=(s*L-u*F+l*M)*C,e[1]=(i*F-n*L-o*M)*C,e[2]=(g*A-v*x+m*w)*C,e[3]=(h*x-f*A-p*w)*C,e[4]=(u*E-a*L-l*j)*C,e[5]=(r*L-i*E+o*j)*C,e[6]=(v*b-d*A-m*_)*C,e[7]=(c*A-h*b+p*_)*C,e[8]=(a*F-s*E+l*k)*C,e[9]=(n*E-r*F-o*k)*C,e[10]=(d*x-g*b+m*y)*C,e[11]=(f*b-c*x-p*y)*C,e[12]=(s*j-a*M-u*k)*C,e[13]=(r*M-n*j+i*k)*C,e[14]=(g*_-d*w-v*y)*C,e[15]=(c*w-f*_+h*y)*C,e):null},l.adjoint=function(e,t){var r=t[0],n=t[1],i=t[2],o=t[3],a=t[4],s=t[5],u=t[6],l=t[7],c=t[8],f=t[9],h=t[10],p=t[11],d=t[12],g=t[13],v=t[14],m=t[15];return e[0]=s*(h*m-p*v)-f*(u*m-l*v)+g*(u*p-l*h),e[1]=-(n*(h*m-p*v)-f*(i*m-o*v)+g*(i*p-o*h)),e[2]=n*(u*m-l*v)-s*(i*m-o*v)+g*(i*l-o*u),e[3]=-(n*(u*p-l*h)-s*(i*p-o*h)+f*(i*l-o*u)),e[4]=-(a*(h*m-p*v)-c*(u*m-l*v)+d*(u*p-l*h)),e[5]=r*(h*m-p*v)-c*(i*m-o*v)+d*(i*p-o*h),e[6]=-(r*(u*m-l*v)-a*(i*m-o*v)+d*(i*l-o*u)),e[7]=r*(u*p-l*h)-a*(i*p-o*h)+c*(i*l-o*u),e[8]=a*(f*m-p*g)-c*(s*m-l*g)+d*(s*p-l*f),e[9]=-(r*(f*m-p*g)-c*(n*m-o*g)+d*(n*p-o*f)),e[10]=r*(s*m-l*g)-a*(n*m-o*g)+d*(n*l-o*s),e[11]=-(r*(s*p-l*f)-a*(n*p-o*f)+c*(n*l-o*s)),e[12]=-(a*(f*v-h*g)-c*(s*v-u*g)+d*(s*h-u*f)),e[13]=r*(f*v-h*g)-c*(n*v-i*g)+d*(n*h-i*f),e[14]=-(r*(s*v-u*g)-a*(n*v-i*g)+d*(n*u-i*s)),e[15]=r*(s*h-u*f)-a*(n*h-i*f)+c*(n*u-i*s),e},l.determinant=function(e){var t=e[0],r=e[1],n=e[2],i=e[3],o=e[4],a=e[5],s=e[6],u=e[7],l=e[8],c=e[9],f=e[10],h=e[11],p=e[12],d=e[13],g=e[14],v=e[15],m=t*a-r*o,y=t*s-n*o,_=t*u-i*o,b=r*s-n*a,w=r*u-i*a,x=n*u-i*s,A=l*d-c*p,k=l*g-f*p,j=l*v-h*p,E=c*g-f*d,M=c*v-h*d,F=f*v-h*g;return m*F-y*M+_*E+b*j-w*k+x*A},l.mul=l.multiply=function(e,t,r){var n=t[0],i=t[1],o=t[2],a=t[3],s=t[4],u=t[5],l=t[6],c=t[7],f=t[8],h=t[9],p=t[10],d=t[11],g=t[12],v=t[13],m=t[14],y=t[15],_=r[0],b=r[1],w=r[2],x=r[3];return e[0]=_*n+b*s+w*f+x*g,e[1]=_*i+b*u+w*h+x*v,e[2]=_*o+b*l+w*p+x*m,e[3]=_*a+b*c+w*d+x*y,_=r[4],b=r[5],w=r[6],x=r[7],e[4]=_*n+b*s+w*f+x*g,e[5]=_*i+b*u+w*h+x*v,e[6]=_*o+b*l+w*p+x*m,e[7]=_*a+b*c+w*d+x*y,_=r[8],b=r[9],w=r[10],x=r[11],e[8]=_*n+b*s+w*f+x*g,e[9]=_*i+b*u+w*h+x*v,e[10]=_*o+b*l+w*p+x*m,e[11]=_*a+b*c+w*d+x*y,_=r[12],b=r[13],w=r[14],x=r[15],e[12]=_*n+b*s+w*f+x*g,e[13]=_*i+b*u+w*h+x*v,e[14]=_*o+b*l+w*p+x*m,e[15]=_*a+b*c+w*d+x*y,e},l.translate=function(e,t,r){var n,i,o,a,s,u,l,c,f,h,p,d,g=r[0],v=r[1],m=r[2];return t===e?(e[12]=t[0]*g+t[4]*v+t[8]*m+t[12],e[13]=t[1]*g+t[5]*v+t[9]*m+t[13],e[14]=t[2]*g+t[6]*v+t[10]*m+t[14],e[15]=t[3]*g+t[7]*v+t[11]*m+t[15]):(n=t[0],i=t[1],o=t[2],a=t[3],s=t[4],u=t[5],l=t[6],c=t[7],f=t[8],h=t[9],p=t[10],d=t[11],e[0]=n,e[1]=i,e[2]=o,e[3]=a,e[4]=s,e[5]=u,e[6]=l,e[7]=c,e[8]=f,e[9]=h,e[10]=p,e[11]=d,e[12]=n*g+s*v+f*m+t[12],e[13]=i*g+u*v+h*m+t[13],e[14]=o*g+l*v+p*m+t[14],e[15]=a*g+c*v+d*m+t[15]),e},l.scale=function(e,t,r){var n=r[0],i=r[1],o=r[2];return e[0]=t[0]*n,e[1]=t[1]*n,e[2]=t[2]*n,e[3]=t[3]*n,e[4]=t[4]*i,e[5]=t[5]*i,e[6]=t[6]*i,e[7]=t[7]*i,e[8]=t[8]*o,e[9]=t[9]*o,e[10]=t[10]*o,e[11]=t[11]*o,e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15],e},l.rotate=function(e,t,n,i){var o,a,s,u,l,c,f,h,p,d,g,v,m,y,_,b,w,x,A,k,j,E,M,F,L=i[0],C=i[1],S=i[2],T=Math.sqrt(L*L+C*C+S*S);return r>Math.abs(T)?null:(T=1/T,L*=T,C*=T,S*=T,o=Math.sin(n),a=Math.cos(n),s=1-a,u=t[0],l=t[1],c=t[2],f=t[3],h=t[4],p=t[5],d=t[6],g=t[7],v=t[8],m=t[9],y=t[10],_=t[11],b=L*L*s+a,w=C*L*s+S*o,x=S*L*s-C*o,A=L*C*s-S*o,k=C*C*s+a,j=S*C*s+L*o,E=L*S*s+C*o,M=C*S*s-L*o,F=S*S*s+a,e[0]=u*b+h*w+v*x,e[1]=l*b+p*w+m*x,e[2]=c*b+d*w+y*x,e[3]=f*b+g*w+_*x,e[4]=u*A+h*k+v*j,e[5]=l*A+p*k+m*j,e[6]=c*A+d*k+y*j,e[7]=f*A+g*k+_*j,e[8]=u*E+h*M+v*F,e[9]=l*E+p*M+m*F,e[10]=c*E+d*M+y*F,e[11]=f*E+g*M+_*F,t!==e&&(e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15]),e)},l.rotateX=function(e,t,r){var n=Math.sin(r),i=Math.cos(r),o=t[4],a=t[5],s=t[6],u=t[7],l=t[8],c=t[9],f=t[10],h=t[11];return t!==e&&(e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15]),e[4]=o*i+l*n,e[5]=a*i+c*n,e[6]=s*i+f*n,e[7]=u*i+h*n,e[8]=l*i-o*n,e[9]=c*i-a*n,e[10]=f*i-s*n,e[11]=h*i-u*n,e},l.rotateY=function(e,t,r){var n=Math.sin(r),i=Math.cos(r),o=t[0],a=t[1],s=t[2],u=t[3],l=t[8],c=t[9],f=t[10],h=t[11];return t!==e&&(e[4]=t[4],e[5]=t[5],e[6]=t[6],e[7]=t[7],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15]),e[0]=o*i-l*n,e[1]=a*i-c*n,e[2]=s*i-f*n,e[3]=u*i-h*n,e[8]=o*n+l*i,e[9]=a*n+c*i,e[10]=s*n+f*i,e[11]=u*n+h*i,e},l.rotateZ=function(e,t,r){var n=Math.sin(r),i=Math.cos(r),o=t[0],a=t[1],s=t[2],u=t[3],l=t[4],c=t[5],f=t[6],h=t[7];return t!==e&&(e[8]=t[8],e[9]=t[9],e[10]=t[10],e[11]=t[11],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15]),e[0]=o*i+l*n,e[1]=a*i+c*n,e[2]=s*i+f*n,e[3]=u*i+h*n,e[4]=l*i-o*n,e[5]=c*i-a*n,e[6]=f*i-s*n,e[7]=h*i-u*n,e},l.fromRotationTranslation=function(e,t,r){var n=t[0],i=t[1],o=t[2],a=t[3],s=n+n,u=i+i,l=o+o,c=n*s,f=n*u,h=n*l,p=i*u,d=i*l,g=o*l,v=a*s,m=a*u,y=a*l;return e[0]=1-(p+g),e[1]=f+y,e[2]=h-m,e[3]=0,e[4]=f-y,e[5]=1-(c+g),e[6]=d+v,e[7]=0,e[8]=h+m,e[9]=d-v,e[10]=1-(c+p),e[11]=0,e[12]=r[0],e[13]=r[1],e[14]=r[2],e[15]=1,e},l.frustum=function(e,t,r,n,i,o,a){var s=1/(r-t),u=1/(i-n),l=1/(o-a);return e[0]=2*o*s,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=2*o*u,e[6]=0,e[7]=0,e[8]=(r+t)*s,e[9]=(i+n)*u,e[10]=(a+o)*l,e[11]=-1,e[12]=0,e[13]=0,e[14]=2*a*o*l,e[15]=0,e},l.perspective=function(e,t,r,n,i){var o=1/Math.tan(t/2),a=1/(n-i);return e[0]=o/r,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=o,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=(i+n)*a,e[11]=-1,e[12]=0,e[13]=0,e[14]=2*i*n*a,e[15]=0,e},l.ortho=function(e,t,r,n,i,o,a){var s=1/(t-r),u=1/(n-i),l=1/(o-a);return e[0]=-2*s,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=-2*u,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=2*l,e[11]=0,e[12]=(t+r)*s,e[13]=(i+n)*u,e[14]=(a+o)*l,e[15]=1,e},l.lookAt=function(e,t,n,i){var o,a,s,u,c,f,h,p,d,g,v=t[0],m=t[1],y=t[2],_=i[0],b=i[1],w=i[2],x=n[0],A=n[1],k=n[2];return r>Math.abs(v-x)&&r>Math.abs(m-A)&&r>Math.abs(y-k)?l.identity(e):(h=v-x,p=m-A,d=y-k,g=1/Math.sqrt(h*h+p*p+d*d),h*=g,p*=g,d*=g,o=b*d-w*p,a=w*h-_*d,s=_*p-b*h,g=Math.sqrt(o*o+a*a+s*s),g?(g=1/g,o*=g,a*=g,s*=g):(o=0,a=0,s=0),u=p*s-d*a,c=d*o-h*s,f=h*a-p*o,g=Math.sqrt(u*u+c*c+f*f),g?(g=1/g,u*=g,c*=g,f*=g):(u=0,c=0,f=0),e[0]=o,e[1]=u,e[2]=h,e[3]=0,e[4]=a,e[5]=c,e[6]=p,e[7]=0,e[8]=s,e[9]=f,e[10]=d,e[11]=0,e[12]=-(o*v+a*m+s*y),e[13]=-(u*v+c*m+f*y),e[14]=-(h*v+p*m+d*y),e[15]=1,e)},l.str=function(e){return"mat4("+e[0]+", "+e[1]+", "+e[2]+", "+e[3]+", "+e[4]+", "+e[5]+", "+e[6]+", "+e[7]+", "+e[8]+", "+e[9]+", "+e[10]+", "+e[11]+", "+e[12]+", "+e[13]+", "+e[14]+", "+e[15]+")"},e!==void 0&&(e.mat4=l);var f={},h=new Float32Array([0,0,0,1]);if(!r)var r=1e-6;f.create=function(){return new Float32Array(h)},f.clone=i.clone,f.fromValues=i.fromValues,f.copy=i.copy,f.set=i.set,f.identity=function(e){return e[0]=0,e[1]=0,e[2]=0,e[3]=1,e},f.setAxisAngle=function(e,t,r){r=.5*r;var n=Math.sin(r);return e[0]=n*t[0],e[1]=n*t[1],e[2]=n*t[2],e[3]=Math.cos(r),e},f.add=i.add,f.mul=f.multiply=function(e,t,r){var n=t[0],i=t[1],o=t[2],a=t[3],s=r[0],u=r[1],l=r[2],c=r[3];return e[0]=n*c+a*s+i*l-o*u,e[1]=i*c+a*u+o*s-n*l,e[2]=o*c+a*l+n*u-i*s,e[3]=a*c-n*s-i*u-o*l,e},f.scale=i.scale,f.rotateX=function(e,t,r){r*=.5;var n=t[0],i=t[1],o=t[2],a=t[3],s=Math.sin(r),u=Math.cos(r);return e[0]=n*u+a*s,e[1]=i*u+o*s,e[2]=o*u-i*s,e[3]=a*u-n*s,e},f.rotateY=function(e,t,r){r*=.5;var n=t[0],i=t[1],o=t[2],a=t[3],s=Math.sin(r),u=Math.cos(r);return e[0]=n*u-o*s,e[1]=i*u+a*s,e[2]=o*u+n*s,e[3]=a*u-i*s,e},f.rotateZ=function(e,t,r){r*=.5;var n=t[0],i=t[1],o=t[2],a=t[3],s=Math.sin(r),u=Math.cos(r);return e[0]=n*u+i*s,e[1]=i*u-n*s,e[2]=o*u+a*s,e[3]=a*u-o*s,e},f.calculateW=function(e,t){var r=t[0],n=t[1],i=t[2];return e[0]=r,e[1]=n,e[2]=i,e[3]=-Math.sqrt(Math.abs(1-r*r-n*n-i*i)),e},f.dot=i.dot,f.lerp=i.lerp,f.slerp=function(e,t,r,n){var i,o,a,s,u=t[0],l=t[1],c=t[2],f=t[3],h=r[0],p=r[1],d=r[2],g=t[3],v=u*h+l*p+c*d+f*g;return Math.abs(v)>=1?(e!==t&&(e[0]=u,e[1]=l,e[2]=c,e[3]=f),e):(i=Math.acos(v),o=Math.sqrt(1-v*v),.001>Math.abs(o)?(e[0]=.5*u+.5*h,e[1]=.5*l+.5*p,e[2]=.5*c+.5*d,e[3]=.5*f+.5*g,e):(a=Math.sin((1-n)*i)/o,s=Math.sin(n*i)/o,e[0]=u*a+h*s,e[1]=l*a+p*s,e[2]=c*a+d*s,e[3]=f*a+g*s,e))},f.invert=function(e,t){var r=t[0],n=t[1],i=t[2],o=t[3],a=r*r+n*n+i*i+o*o,s=a?1/a:0;return e[0]=-r*s,e[1]=-n*s,e[2]=-i*s,e[3]=o*s,e},f.conjugate=function(e,t){return e[0]=-t[0],e[1]=-t[1],e[2]=-t[2],e[3]=t[3],e},f.len=f.length=i.length,f.sqrLen=f.squaredLength=i.squaredLength,f.normalize=i.normalize,f.str=function(e){return"quat("+e[0]+", "+e[1]+", "+e[2]+", "+e[3]+")"},e!==void 0&&(e.quat=f)}(e.exports)})()})()},{}],1:[function(e,t){"use strict";function r(e){var t=n();return e.on("tick",function(){var r=e.down("control"),n=e.down("shift"),i=e.down("mouse-left"),o=e.down("mouse-right"),a=e.down("mouse-middle");if(!i||r||n||t.rotate([e.mouseX/e.width-.5,e.mouseY/e.height-.5],[e.prevMouseX/e.width-.5,e.prevMouseY/e.height-.5]),(o||i&&r&&!n)&&t.pan([(e.mouseX-e.prevMouseX)/e.width,(e.mouseY-e.prevMouseY)/e.height]),e.scroll[1]&&(t.distance*=Math.exp(e.scroll[1]/e.height)),a||i&&!r&&n){var s=e.mouseY-e.prevMouseY;s&&(t.distance*=Math.exp(s/e.height))}}),t}var n=e("orbit-camera");t.exports=r},{"orbit-camera":5}],4:[function(e,t){"use strict";function r(e){e=e||{};var t=e.extensions||[],r=n(e);return r.on("init",function(){var n=document.createElement("canvas"),o=n.getContext("webgl")||n.getContext("experimental-webgl");if(!o)return r.emit("gl-error",Error("Unable to initialize WebGL")),void 0;for(var a=i(o),s=0;t.length>s;++s)if(!(t[s]in a))return r.emit("gl-error",Error("Missing extension: "+t[s])),void 0;n.style.position="absolute",n.style.left="0px",n.style.top="0px",r.element.appendChild(n),n.width=r.width,n.height=r.height,r.canvas=n,r.gl=o,r.clearFlags=void 0===e.clearFlags?o.COLOR_BUFFER_BIT|o.DEPTH_BUFFER_BIT:e.clearFlags,r.clearColor=e.clearColor||[.2,.4,.8,1],r.clearDepth=e.clearDepth||1,r.clearStencil=e.clearStencil||0,r.on("resize",function(e,t){n.width=e,n.height=t}),r.on("render",function(e){o.bindFramebuffer(o.FRAMEBUFFER,null),o.viewport(0,0,r.width,r.height),r.clearFlags&o.STENCIL_BUFFER_BIT&&o.clearStencil(r.clearStencil),r.clearFlags&o.COLOR_BUFFER_BIT&&o.clearColor(r.clearColor[0],r.clearColor[1],r.clearColor[2],r.clearColor[3]),r.clearFlags&o.DEPTH_BUFFER_BIT&&o.clearDepth(r.clearDepth),r.clearFlags&&o.clear(o.COLOR_BUFFER_BIT|o.DEPTH_BUFFER_BIT|o.STENCIL_BUFFER_BIT),r.emit("gl-render",e)}),r.emit("gl-init")}),r}var n=e("game-shell"),i=e("webglew");t.exports=r},{"game-shell":6,webglew:7}],8:[function(e,t,r){var n=1e-6;r.vertexNormals=function(e,t){for(var r=t.length,i=Array(r),o=0;r>o;++o)i[o]=[0,0,0];for(var o=0;e.length>o;++o)for(var a=e[o],s=0,u=a[a.length-1],l=a[0],c=0;a.length>c;++c){s=u,u=l,l=a[(c+1)%a.length];for(var f=t[s],h=t[u],p=t[l],d=Array(3),g=0,v=Array(3),m=0,y=0;3>y;++y)d[y]=f[y]-h[y],g+=d[y]*d[y],v[y]=p[y]-h[y],m+=v[y]*v[y];if(g*m>n)for(var _=i[u],b=1/Math.sqrt(g*m),y=0;3>y;++y){var w=(y+1)%3,x=(y+2)%3;_[y]+=b*(v[w]*d[x]-v[x]*d[w])}}for(var o=0;r>o;++o){for(var _=i[o],A=0,y=0;3>y;++y)A+=_[y]*_[y];if(A>n)for(var b=1/Math.sqrt(A),y=0;3>y;++y)_[y]*=b;else for(var y=0;3>y;++y)_[y]=0}return i},r.faceNormals=function(e,t){for(var r=e.length,i=Array(r),o=0;r>o;++o){for(var a=e[o],s=Array(3),u=0;3>u;++u)s[u]=t[a[u]];for(var l=Array(3),c=Array(3),u=0;3>u;++u)l[u]=s[1][u]-s[0][u],c[u]=s[2][u]-s[0][u];for(var f=Array(3),h=0,u=0;3>u;++u){var p=(u+1)%3,d=(u+2)%3;f[u]=l[p]*c[d]-l[d]*c[p],h+=f[u]*f[u]}h=h>n?1/Math.sqrt(h):0;for(var u=0;3>u;++u)f[u]*=h;i[o]=f}return i}},{}],7:[function(e,t){"use strict";function r(e){for(var t=0;i.length>t;++t){var r=i[t];if(0===e.indexOf(r))return e.slice(r.length)}return e}function n(e){if(e._webglew_struct)return e._webglew_struct;for(var t={},n=e.getSupportedExtensions(),i=0;n.length>i;++i){var o=e.getExtension(n[i]);o&&(t[n[i]]=o,t[r(n[i])]=o)}return e._webglew_struct=t,t}var i=["WEBKIT_","MOZ_"];t.exports=n},{}],2:[function(e,t){"use strict";function r(e,t,r,n,i,o,a,s,u,l,c,f){this.gl=e,this.trianglePositions=t,this.triangleColors=r,this.triangleNormals=n,this.triangleVAO=i,this.triangleCount=0,this.edgePositions=o,this.edgeColors=a,this.edgeVAO=s,this.edgeCount=0,this.pointPositions=u,this.pointColors=l,this.pointSizes=c,this.pointVAO=f,this.pointCount=0}function n(e){var t=l(e,"attribute vec3 position; attribute vec3 color; attribute vec3 normal; uniform mat4 model; uniform mat4 modelInverseTranspose; uniform mat4 view; uniform vec3 eyePosition; uniform mat4 projection; varying vec3 f_position; varying vec3 f_color; varying vec3 f_normal; varying vec3 viewDirection; void main() { vec4 m_position = model * vec4(position, 1.0); vec4 t_position = view * m_position; gl_Position = projection * t_position; f_color = color; f_normal = normalize((modelInverseTranspose * vec4(normal, 0.0)).xyz); f_position = m_position.xyz/m_position.w; viewDirection = eyePosition - f_position; }","precision highp float; uniform vec3 lightPosition; uniform vec3 ambient; uniform vec3 diffuse; uniform vec3 specular; uniform float specularExponent; varying vec3 f_position; varying vec3 f_color; varying vec3 f_normal; varying vec3 viewDirection; void main() { vec3 lightDirection = normalize(lightPosition - f_position); vec3 normal = normalize(f_normal); float diffuseIntensity = clamp(dot(normal, lightDirection), 0.0, 1.0); vec3 halfView = normalize(lightDirection + normalize(viewDirection)); float specularIntensity = pow(clamp(dot(normal, halfView),0.0,1.0), specularExponent); gl_FragColor = vec4(f_color * (ambient + diffuse * diffuseIntensity) + specular * specularIntensity, 1.0); }");return t.attributes.position.location=0,t.attributes.color.location=1,t.attributes.normal.location=2,t}function i(e){var t=l(e,"attribute vec3 position; attribute vec3 color; uniform mat4 model; uniform mat4 view; uniform mat4 projection; varying vec3 f_color; void main() { gl_Position = projection * view * model * vec4(position, 1.0); f_color = color; }","precision highp float; varying vec3 f_color; void main() { gl_FragColor = vec4(f_color, 1.0); }");return t.attributes.position.location=0,t.attributes.color.location=1,t}function o(e){var t=l(e,"attribute vec3 position; attribute vec3 color; attribute float pointSize; uniform mat4 model; uniform mat4 view; uniform mat4 projection; varying vec3 f_color; void main() { gl_Position = projection * view * model * vec4(position, 1.0); f_color = color; gl_PointSize = pointSize; }","precision highp float; varying vec3 f_color; void main() { gl_FragColor = vec4(f_color, 1.0); }");return t.attributes.position.location=0,t.attributes.color.location=1,t.attributes.pointSize.location=2,t}function a(e,t){e.__SIMPLICIAL_MESH_SHADER||(e.__SIMPLICIAL_MESH_SHADER=n(e)),e.__SIMPLICIAL_WIRE_SHADER||(e.__SIMPLICIAL_WIRE_SHADER=i(e)),e.__SIMPLICIAL_POINT_SHADER||(e.__SIMPLICIAL_POINT_SHADER=o(e));var a=s(e,[]),l=s(e,[]),c=s(e,[]),f=u(e,null,[{buffer:a,type:e.FLOAT,size:3},{buffer:l,type:e.FLOAT,size:3},{buffer:c,type:e.FLOAT,size:3}]),h=s(e,[]),p=s(e,[]),d=u(e,null,[{buffer:h,type:e.FLOAT,size:3},{buffer:p,type:e.FLOAT,size:3}]),g=s(e,[]),v=s(e,[]),m=s(e,[]),y=u(e,null,[{buffer:g,type:e.FLOAT,size:3},{buffer:v,type:e.FLOAT,size:3},{buffer:m,type:e.FLOAT,size:1}]),_=new r(e,a,l,c,f,h,p,d,g,v,m,y);return _.update(t),_}var s=e("gl-buffer"),u=e("gl-vao"),l=e("gl-shader"),c=e("gl-matrix"),f=e("normals"),h=c.mat4,p=h.identity(h.create());r.prototype.update=function(e){e=e||{},this.gl;var t=e.cells,r=e.positions,n=[],i=[],o=[],a=[],s=[],u=[],l=[],c=[],h=e.vertexNormals,p=e.cellNormals;e.useCellNormals&&!p&&(p=f.facetNormals(t,r)),p||h||(h=f.vertexNormals(t,r));var d=e.vertexColors,g=e.cellColors,v=e.meshColor||[.7,.5,.2];if(3!==v.length)throw Error("bad mesh color");for(var m=e.pointSizes,y=e.pointSize||1,_=0,b=0,w=0,x=0;t.length>x;++x){var A=t[x],k=t[x].length;switch(k){case 1:++w,u.push.apply(u,r[A[0]]),d?l.push.apply(l,d[A[0]]):g?l.push.apply(l,g[x]):l.push.apply(l,v),m?c.push(m[A[0]]):c.push(y);break;case 2:++b;for(var j=0;2>j;++j){var E=A[j];a.push.apply(a,r[E]),d?s.push.apply(s,d[E]):g?s.push.apply(s,g[x]):s.push.apply(s,v)}break;case 3:++_;for(var j=0;3>j;++j){var E=A[j];n.push.apply(n,r[E]),d?i.push.apply(i,d[E]):g?i.push.apply(i,g[x]):i.push.apply(i,v),h?o.push.apply(o,h[E]):o.push.apply(o,p[x])}break;default:}}this.pointCount=w,this.edgeCount=b,this.triangleCount=_,this.pointPositions.update(u),this.pointColors.update(l),this.pointSizes.update(c),this.edgePositions.update(a),this.edgeColors.update(s),this.trianglePositions.update(n),this.triangleColors.update(i),this.triangleNormals.update(o)},r.prototype.draw=function(e){e=e||{};var t=this.gl,r=e.model||p,n=e.view||p,i=e.projection||p;if(this.triangleCount>0){var o=t.__SIMPLICIAL_MESH_SHADER;o.bind(),o.uniforms.model=r,o.uniforms.view=n,o.uniforms.projection=i;var a=h.invert(h.create(),n);o.uniforms.lightPosition=e.lightPosition||[0,100,0],o.uniforms.ambient=e.ambient||[.3,.3,.3],o.uniforms.diffuse=e.diffuse||[.5,.5,.5],o.uniforms.specular=e.specular||[1,1,1],o.uniforms.specularExponent=e.specularExponent||10,o.uniforms.eyePosition=[a[12],a[13],a[14]];var s=h.create();o.uniforms.modelInverseTranspose=h.transpose(s,h.invert(s,r)),this.triangleVAO.bind(),t.drawArrays(t.TRIANGLES,0,3*this.triangleCount),this.triangleVAO.unbind()}if(this.edgeCount>0){var o=t.__SIMPLICIAL_WIRE_SHADER;o.bind(),o.uniforms.model=r,o.uniforms.view=n,o.uniforms.projection=i,this.edgeVAO.bind(),t.drawArrays(t.LINES,0,3*this.edgeCount),this.edgeVAO.unbind()}if(this.pointCount>0){var o=t.__SIMPLICIAL_POINT_SHADER;o.bind(),o.uniforms.model=r,o.uniforms.view=n,o.uniforms.projection=i,this.pointVAO.bind(),t.drawArrays(t.POINTS,0,this.pointCount),this.pointVAO.unbind()}},r.prototype.dispose=function(){this.triangleVAO.dispose(),this.edgeVAO.dispose(),this.pointVAO.dispose(),this.trianglePositions.dispose(),this.triangleColors.dispose(),this.triangleNormals.dispose(),this.edgePositions.dispose(),this.edgeColors.dispose(),this.pointPositions.dispose(),this.pointColors.dispose(),this.pointSizes.dispose()
},t.exports=a},{"gl-buffer":9,"gl-shader":10,"gl-vao":11,normals:8,"gl-matrix":3}],12:[function(e,t){var r=t.exports={};r.nextTick=function(){var e="undefined"!=typeof window&&window.setImmediate,t="undefined"!=typeof window&&window.postMessage&&window.addEventListener;if(e)return function(e){return window.setImmediate(e)};if(t){var r=[];return window.addEventListener("message",function(e){if(e.source===window&&"process-tick"===e.data&&(e.stopPropagation(),r.length>0)){var t=r.shift();t()}},!0),function(e){r.push(e),window.postMessage("process-tick","*")}}return function(e){setTimeout(e,0)}}(),r.title="browser",r.browser=!0,r.env={},r.argv=[],r.binding=function(){throw Error("process.binding is not supported")},r.cwd=function(){return"/"},r.chdir=function(){throw Error("process.chdir is not supported")}},{}],13:[function(e,t,r){(function(e){function t(e,t){if(e.indexOf)return e.indexOf(t);for(var r=0;e.length>r;r++)if(t===e[r])return r;return-1}e.EventEmitter||(e.EventEmitter=function(){});var n=r.EventEmitter=e.EventEmitter,i="function"==typeof Array.isArray?Array.isArray:function(e){return"[object Array]"===Object.prototype.toString.call(e)},o=10;n.prototype.setMaxListeners=function(e){this._events||(this._events={}),this._events.maxListeners=e},n.prototype.emit=function(e){if("error"===e&&(!this._events||!this._events.error||i(this._events.error)&&!this._events.error.length))throw arguments[1]instanceof Error?arguments[1]:Error("Uncaught, unspecified 'error' event.");if(!this._events)return!1;var t=this._events[e];if(!t)return!1;if("function"==typeof t){switch(arguments.length){case 1:t.call(this);break;case 2:t.call(this,arguments[1]);break;case 3:t.call(this,arguments[1],arguments[2]);break;default:var r=Array.prototype.slice.call(arguments,1);t.apply(this,r)}return!0}if(i(t)){for(var r=Array.prototype.slice.call(arguments,1),n=t.slice(),o=0,a=n.length;a>o;o++)n[o].apply(this,r);return!0}return!1},n.prototype.addListener=function(e,t){if("function"!=typeof t)throw Error("addListener only takes instances of Function");if(this._events||(this._events={}),this.emit("newListener",e,t),this._events[e])if(i(this._events[e])){if(!this._events[e].warned){var r;r=void 0!==this._events.maxListeners?this._events.maxListeners:o,r&&r>0&&this._events[e].length>r&&(this._events[e].warned=!0,console.error("(node) warning: possible EventEmitter memory leak detected. %d listeners added. Use emitter.setMaxListeners() to increase limit.",this._events[e].length),console.trace())}this._events[e].push(t)}else this._events[e]=[this._events[e],t];else this._events[e]=t;return this},n.prototype.on=n.prototype.addListener,n.prototype.once=function(e,t){var r=this;return r.on(e,function n(){r.removeListener(e,n),t.apply(this,arguments)}),this},n.prototype.removeListener=function(e,r){if("function"!=typeof r)throw Error("removeListener only takes instances of Function");if(!this._events||!this._events[e])return this;var n=this._events[e];if(i(n)){var o=t(n,r);if(0>o)return this;n.splice(o,1),0==n.length&&delete this._events[e]}else this._events[e]===r&&delete this._events[e];return this},n.prototype.removeAllListeners=function(e){return 0===arguments.length?(this._events={},this):(e&&this._events&&this._events[e]&&(this._events[e]=null),this)},n.prototype.listeners=function(e){return this._events||(this._events={}),this._events[e]||(this._events[e]=[]),i(this._events[e])||(this._events[e]=[this._events[e]]),this._events[e]}})(e("__browserify_process"))},{__browserify_process:12}],14:[function(e,t){function r(e,t,r,a){e[n](o+t,"wheel"==i?r:function(e){!e&&(e=window.event);var t={originalEvent:e,target:e.target||e.srcElement,type:"wheel",deltaMode:"MozMousePixelScroll"==e.type?0:1,deltaX:0,delatZ:0,preventDefault:function(){e.preventDefault?e.preventDefault():e.returnValue=!1}};return"mousewheel"==i?(t.deltaY=-1/40*e.wheelDelta,e.wheelDeltaX&&(t.deltaX=-1/40*e.wheelDeltaX)):t.deltaY=e.detail,r(t)},a||!1)}var n,i,o="";window.addEventListener?n="addEventListener":(n="attachEvent",o="on"),i="onwheel"in document.createElement("div")?"wheel":void 0!==document.onmousewheel?"mousewheel":"DOMMouseScroll",t.exports=function(e,t,n){r(e,i,t,n),"DOMMouseScroll"==i&&r(e,"MozMousePixelScroll",t,n)}},{}],15:[function(){for(var e=0,t=["ms","moz","webkit","o"],r=0;t.length>r&&!window.requestAnimationFrame;++r)window.requestAnimationFrame=window[t[r]+"RequestAnimationFrame"],window.cancelAnimationFrame=window[t[r]+"CancelAnimationFrame"]||window[t[r]+"CancelRequestAnimationFrame"];window.requestAnimationFrame||(window.requestAnimationFrame=function(t){var r=(new Date).getTime(),n=Math.max(0,16-(r-e)),i=window.setTimeout(function(){t(r+n)},n);return e=r+n,i}),window.cancelAnimationFrame||(window.cancelAnimationFrame=function(e){clearTimeout(e)})},{}],16:[function(e,t){t.exports=window.performance.now?function(){return window.performance.now()}:window.performance.webktiNow?function(){return window.performance.webkitNow()}:Date.now?Date.now:function(){return(new Date).getTime()}},{}],17:[function(e,t,r){function n(e){return e instanceof Array||Array.isArray(e)||e&&e!==Object.prototype&&n(e.__proto__)}function i(e){return e instanceof RegExp||"object"==typeof e&&"[object RegExp]"===Object.prototype.toString.call(e)}function o(e){if(e instanceof Date)return!0;if("object"!=typeof e)return!1;var t=Date.prototype&&s(Date.prototype),r=e.__proto__&&s(e.__proto__);return JSON.stringify(r)===JSON.stringify(t)}e("events"),r.isArray=n,r.isDate=function(e){return"[object Date]"===Object.prototype.toString.call(e)},r.isRegExp=function(e){return"[object RegExp]"===Object.prototype.toString.call(e)},r.print=function(){},r.puts=function(){},r.debug=function(){},r.inspect=function(e,t,u,l){function c(e,u){if(e&&"function"==typeof e.inspect&&e!==r&&(!e.constructor||e.constructor.prototype!==e))return e.inspect(u);switch(typeof e){case"undefined":return h("undefined","undefined");case"string":var l="'"+JSON.stringify(e).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return h(l,"string");case"number":return h(""+e,"number");case"boolean":return h(""+e,"boolean")}if(null===e)return h("null","null");var p=a(e),d=t?s(e):p;if("function"==typeof e&&0===d.length){if(i(e))return h(""+e,"regexp");var g=e.name?": "+e.name:"";return h("[Function"+g+"]","special")}if(o(e)&&0===d.length)return h(e.toUTCString(),"date");var v,m,y;if(n(e)?(m="Array",y=["[","]"]):(m="Object",y=["{","}"]),"function"==typeof e){var _=e.name?": "+e.name:"";v=i(e)?" "+e:" [Function"+_+"]"}else v="";if(o(e)&&(v=" "+e.toUTCString()),0===d.length)return y[0]+v+y[1];if(0>u)return i(e)?h(""+e,"regexp"):h("[Object]","special");f.push(e);var b=d.map(function(t){var r,i;if(e.__lookupGetter__&&(e.__lookupGetter__(t)?i=e.__lookupSetter__(t)?h("[Getter/Setter]","special"):h("[Getter]","special"):e.__lookupSetter__(t)&&(i=h("[Setter]","special"))),0>p.indexOf(t)&&(r="["+t+"]"),i||(0>f.indexOf(e[t])?(i=null===u?c(e[t]):c(e[t],u-1),i.indexOf("\n")>-1&&(i=n(e)?i.split("\n").map(function(e){return" "+e}).join("\n").substr(2):"\n"+i.split("\n").map(function(e){return" "+e}).join("\n"))):i=h("[Circular]","special")),r===void 0){if("Array"===m&&t.match(/^\d+$/))return i;r=JSON.stringify(""+t),r.match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(r=r.substr(1,r.length-2),r=h(r,"name")):(r=r.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),r=h(r,"string"))}return r+": "+i});f.pop();var w=0,x=b.reduce(function(e,t){return w++,t.indexOf("\n")>=0&&w++,e+t.length+1},0);return b=x>50?y[0]+(""===v?"":v+"\n ")+" "+b.join(",\n ")+" "+y[1]:y[0]+v+" "+b.join(", ")+" "+y[1]}var f=[],h=function(e,t){var r={bold:[1,22],italic:[3,23],underline:[4,24],inverse:[7,27],white:[37,39],grey:[90,39],black:[30,39],blue:[34,39],cyan:[36,39],green:[32,39],magenta:[35,39],red:[31,39],yellow:[33,39]},n={special:"cyan",number:"blue","boolean":"yellow",undefined:"grey","null":"bold",string:"green",date:"magenta",regexp:"red"}[t];return n?"["+r[n][0]+"m"+e+"["+r[n][1]+"m":e};return l||(h=function(e){return e}),c(e,u===void 0?2:u)},r.log=function(){},r.pump=null;var a=Object.keys||function(e){var t=[];for(var r in e)t.push(r);return t},s=Object.getOwnPropertyNames||function(e){var t=[];for(var r in e)Object.hasOwnProperty.call(e,r)&&t.push(r);return t},u=Object.create||function(e,t){var r;if(null===e)r={__proto__:null};else{if("object"!=typeof e)throw new TypeError("typeof prototype["+typeof e+"] != 'object'");var n=function(){};n.prototype=e,r=new n,r.__proto__=e}return t!==void 0&&Object.defineProperties&&Object.defineProperties(r,t),r};r.inherits=function(e,t){e.super_=t,e.prototype=u(t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}})};var l=/%[sdj%]/g;r.format=function(e){if("string"!=typeof e){for(var t=[],n=0;arguments.length>n;n++)t.push(r.inspect(arguments[n]));return t.join(" ")}for(var n=1,i=arguments,o=i.length,a=(e+"").replace(l,function(e){if("%%"===e)return"%";if(n>=o)return e;switch(e){case"%s":return i[n++]+"";case"%d":return Number(i[n++]);case"%j":return JSON.stringify(i[n++]);default:return e}}),s=i[n];o>n;s=i[++n])a+=null===s||"object"!=typeof s?" "+s:" "+r.inspect(s);return a}},{events:13}],9:[function(e,t){"use strict";function r(e,t,r,n,i){this.gl=e,this.type=t,this.handle=r,this.length=n,this.usage=i}function n(e,t,r,n,i,o){if(0>=o&&i.length>r)return e.bufferData(t,i,n),i.length;if(i.length+o>r)throw Error("If resizing buffer, offset must be 0");return e.bufferSubData(t,o,i),r}function i(e,t){for(var r=a.malloc(e.length,t),n=e.length,i=0;n>i;++i)r[i]=e[i];return r}function o(e,t,n,i){void 0===n&&(n=t,t=e.ARRAY_BUFFER),i||(i=e.DYNAMIC_DRAW);var o=0,l=e.createBuffer();if(e.bindBuffer(t,l),"number"==typeof n)e.bufferData(t,n,i),o=n;else if(n instanceof Array)t===e.ELEMENT_ARRAY_BUFFER?e.bufferData(t,new Uint16Array(n),i):e.bufferData(t,new Float32Array(n),i),o=n.length;else if(n.length)e.bufferData(t,n,i),o=n.length;else{if(!n.shape)throw Error("Invalid format for buffer data");var c=n.dtype;if(("float64"===c||"array"===c||"generic"===c)&&(c="float32"),t===e.ELEMENT_ARRAY_BUFFER&&(c="uint16"),1!==n.shape.length)throw Error("Array shape must be 1D");var o=n.shape[0];if(c===n.type&&1===n.stride[0])e.bufferData(t,n.data.subarray(n.offset,n.offset+o),i);else{var f=a.malloc(n.shape[0],c),h=u(f);s.assign(h,n),this.gl.bufferData(this.type,f,i),a.free(f)}}return new r(e,t,l,o,i)}var a=e("typedarray-pool"),s=e("ndarray-ops"),u=e("ndarray");r.prototype.bind=function(){this.gl.bindBuffer(this.type,this.handle)},r.prototype.dispose=function(){this.gl.deleteBuffer(this.handle)},r.prototype.update=function(e,t){if(t||(t=0),this.bind(),"number"==typeof e){if(t>=0)throw Error("Offset must be < 0 to resize buffer");this.gl.bufferData(this.type,e,this.usage),this.length=e}else if(e.shape){var r=e.dtype;if(("float64"===r||"array"===r||"generic"===r)&&(r="float32"),this.type===this.gl.ELEMENT_ARRAY_BUFFER&&(r="uint16"),1!==e.shape.length)throw Error("Array length must be 1");if(r===e.dtype&&1===e.stride[0])this.length=0===e.offset&&e.data.length===e.shape[0]?n(this.gl,this.type,this.length,this.usage,e.data,t):n(this.gl,this.type,this.length,this.usage,e.data.subarray(e.offset,e.shape[0]),t);else{var o=a.malloc(e.shape[0],r),l=u(o);s.assign(l,e),this.length=n(this.gl,this.type,this.length,this.usage,o,t),a.free(o)}}else if(e instanceof Array)if(this.type===this.gl.ELEMENT_ARRAY_BUFFER){var c=i(e,"uint16");this.length=n(this.gl,this.type,this.length,this.usage,c.subarray(0,e.length),t),a.freeUint16(c)}else{var c=i(e,"float32");this.length=n(this.gl,this.type,this.length,this.usage,c.subarray(0,e.length),t),a.freeFloat32(c)}else this.length=n(this.gl,this.type,this.length,this.usage,e,t)},r.prototype.draw=function(e,t,r){r=r||0;var n=this.gl;if(this.type===n.ARRAY_BUFFER)n.drawArrays(e,r,t);else{if(this.type!==n.ELEMENT_ARRAY_BUFFER)throw Error("Invalid type for WebGL buffer");this.bind(),n.drawElements(e,t,n.UNSIGNED_SHORT,r)}},t.exports=o},{"typedarray-pool":18,"ndarray-ops":19,ndarray:20}],10:[function(e,t){"use strict";function r(e,t,r,n){this.gl=e,this.program=t,this.uniforms=r,this.attributes=n}function n(e){return Object.keys(e).map(function(t){return[t,e[t]]})}function i(e,t,r,n,i,o,a){o>1&&(i+="v");var s=Function("gl","prog","v","gl.uniform"+o+i+"(gl.getUniformLocation(prog,'"+a+"'), v)"),u=Function("gl","prog","return gl.getUniform(prog, gl.getUniformLocation(prog,'"+a+"'))");Object.defineProperty(n,a,{set:s.bind(void 0,e,t),get:u.bind(void 0,e,t),enumerable:!0})}function o(e,t,r,n,i,o){var a=Function("gl","prog","v","gl.uniformMatrix"+i+"fv(gl.getUniformLocation(prog,'"+o+"'), false, v)"),s=Function("gl","prog","return gl.getUniform(prog, gl.getUniformLocation(prog,'"+o+"'))");Object.defineProperty(n,o,{set:a.bind(void 0,e,t),get:s.bind(void 0,e,t),enumerable:!0})}function a(e,t,r,n,i,o){var a={};a.pointer=function(t,n,o,a){e.vertexAttribPointer(r,i,t||e.FLOAT,n?e.TRUE:e.FALSE,o||0,a||0)},a.enable=function(){e.enableVertexAttribArray(r)},a.disable=function(){e.disableVertexAttribArray(r)},Object.defineProperty(a,"location",{get:function(){return r},set:function(n){return n!==r&&(r=n,e.bindAttribLocation(t,n,o),e.linkProgram(t)),n}});for(var s=["gl","v"],u=[],l=0;i>l;++l)s.push("x"+l),u.push("x"+l);s.push(["if(x0.length === undefined) {","return gl.vertexAttrib"+i+"f(v,"+u.join(",")+")","} else {","return gl.vertexAttrib"+i+"fv(v,x0)","}"].join("\n"));var c=Function.apply(void 0,s);a.set=function(t,n,i,o){return c(e,r,t,n,i,o)},Object.defineProperty(n,o,{set:function(t){return a.isArray=!1,c(e,r,t),t},get:function(){return a},enumerable:!0})}function s(e,t,s){var c=e.createShader(e.VERTEX_SHADER);if(e.shaderSource(c,t),e.compileShader(c),!e.getShaderParameter(c,e.COMPILE_STATUS))throw Error("Error compiling vertex shader: "+e.getShaderInfoLog(c));var f=e.createShader(e.FRAGMENT_SHADER);if(e.shaderSource(f,s),e.compileShader(f),!e.getShaderParameter(f,e.COMPILE_STATUS))throw Error("Error compiling fragment shader: "+e.getShaderInfoLog(f));var h=e.createProgram();if(e.attachShader(h,f),e.attachShader(h,c),e.linkProgram(h),!e.getProgramParameter(h,e.LINK_STATUS))throw Error("Error linking shader program: "+e.getProgramInfoLog(h));for(var p=u(s),d=u(t),g=l(n(p.uniforms).concat(n(d.uniforms)),function(e,t){return e[0]<t[0]?-1:e[0]===t[0]?0:1}),v={},m=0;g.length>m;++m){var y=g[m],_=y[0],b=y[1],w=e.getUniformLocation(h,_);if(w)switch(b){case"bool":case"int":case"sampler2D":case"samplerCube":i(e,h,w,v,"i",1,_);break;case"float":i(e,h,w,v,"f",1,_);break;default:if(b.indexOf("vec")>=0){var x=b.charCodeAt(b.length-1)-48;if(2>x||x>4)throw Error("Invalid data type");switch(b.charAt(0)){case"b":case"i":i(e,h,w,v,"i",x,_);break;case"v":i(e,h,w,v,"f",x,_);break;default:throw Error("Unrecognized data type")}}else{if("m"!==b.charAt(0))throw Error("Invalid data type");var x=b.charCodeAt(b.length-1)-48;if(2>x||x>4)throw Error("Invalid data type");o(e,h,w,v,x,_)}}else Object.defineProperty(v,_,{get:function(){},set:function(){}})}for(var A=n(d.attributes),k={},m=0;A.length>m;++m){var y=A[m],_=y[0],b=y[1],w=e.getAttribLocation(h,_);switch(b){case"bool":case"int":case"float":a(e,h,w,k,1,_);break;default:if(!(b.indexOf("vec")>=0))throw Error("Invalid data type");var x=b.charCodeAt(b.length-1)-48;if(2>x||x>4)throw Error("Invalid data type");a(e,h,w,k,x,_)}}return new r(e,h,v,k)}var u=e("glsl-exports"),l=e("uniq");r.prototype.bind=function(){this.gl.useProgram(this.program)},t.exports=s},{uniq:21,"glsl-exports":22}],11:[function(e,t){"use strict";function r(e,t,r){var a,s=n(e).OES_vertex_array_object;return a=s?i(e,s):o(e),a.update(t,r),a}var n=e("webglew"),i=e("./lib/vao-native.js"),o=e("./lib/vao-emulated.js");t.exports=r},{"./lib/vao-native.js":23,"./lib/vao-emulated.js":24,webglew:25}],6:[function(e,t){"use strict";function r(e){var t=P(R,e);return 0>t||t>=R.length?-1:t}function n(e){return r(q[e])}function i(){M.call(this),this._curKeyState=Array(R.length),this._pressCount=Array(R.length),this._releaseCount=Array(R.length),this._tickInterval=null,this._rafHandle=null,this._tickRate=0,this._lastTick=N(),this._frameTime=0,this._paused=!0,this._width=0,this._height=0,this._wantFullscreen=!1,this._wantPointerLock=!1,this._fullscreenActive=!1,this._pointerLockActive=!1,this._render=h.bind(void 0,this);for(var e=0;R.length>e;++e)this._curKeyState[e]=!1,this._pressCount[e]=this._releaseCount[e]=0;this.element=null,this.bindings={},this.frameSkip=100,this.tickCount=0,this.frameCount=0,this.startTime=N(),this.tickTime=this._tickRate,this.frameTime=10,this.stickyFullscreen=!1,this.stuckyPointLock=!1,this.scroll=[0,0,0],this.mouseX=0,this.mouseY=0,this.prevMouseX=0,this.prevMouseY=0}function o(e,t,n){if(n in t){for(var i=t[n],o=0,a=i.length;a>o;++o)if(e[r(i[o])])return!0;return!1}var s=r(n);return s>=0?e[s]:!1}function a(e,t,n){if(n in t){for(var i=t[n],o=0,a=0,s=i.length;s>a;++a)o+=e[r(i[a])];return o}var u=r(n);return u>=0?e[u]:0}function s(e){var t=e.element;if(e._wantFullscreen&&!e._fullscreenActive){var r=t.requestFullscreen||t.requestFullScreen||t.webkitRequestFullscreen||t.webkitRequestFullScreen||t.mozRequestFullscreen||t.mozRequestFullScreen||function(){};r.call(t)}if(e._wantPointerLock&&!e._pointerLockActive){var n=t.requestPointerLock||t.webkitRequestPointerLock||t.mozRequestPointerLock||t.msRequestPointerLock||t.oRequestPointerLock||function(){};n.call(t)}}function u(e){e._fullscreenActive=document.fullscreen||document.mozFullScreen||document.webkitIsFullScreen||!1,!e.stickyFullscreen&&e._fullscreenActive&&(e._wantFullscreen=!1)}function l(e){e._pointerLockActive=e.element===(document.pointerLockElement||document.mozPointerLockElement||document.webkitPointerLockElement||null),!e.stickyPointerLock&&e._pointerLockActive&&(e._wantPointerLock=!1)}function c(e,t,r){var n=e._curKeyState[t];n!==r&&(r?e._pressCount[t]++:e._releaseCount[t]++,e._curKeyState[t]=r)}function f(e){for(var t,r,n,i=N()+e.frameSkip,o=e._pressCount,a=e._releaseCount,s=e._tickRate,u=R.length;!e._paused&&N()>=e._lastTick+s;){if(N()>i)return e._lastTick=N()+s,void 0;for(r=N(),e.emit("tick"),n=N(),e.tickTime=n-r,++e.tickCount,e._lastTick+=s,t=0;u>t;++t)o[t]=a[t]=0;e._pointerLockActive?(e.prevMouseX=e.mouseX=e.width>>1,e.prevMouseY=e.mouseY=e.height>>1):(e.prevMouseX=e.mouseX,e.prevMouseY=e.mouseY),e.scroll[0]=e.scroll[1]=e.scroll[2]=0}}function h(e){if(!e._paused){f(e);var t;t=e._paused?e._frameTime:O(1,(N()-e._lastTick)/e._tickRate),++e.frameCount;var r=N();e.emit("render",t);var n=N();e.frameTime=n-r,requestAnimationFrame(e._render)}}function p(e,t){var r=n(t.keyCode||t.char||t.which||t.charCode);r>=0&&c(e,r,!1)}function d(e,t){var r=n(t.keyCode||t.char||t.which||t.charCode);r>=0&&c(e,r,!0)}function g(e,t){for(var r=0;32>r;++r)c(e,B[r],!!(t&1<<r))}function v(e,t){if(e._pointerLockActive){var r=t.movementX||t.mozMovementX||t.webkitMovementX||0,n=t.movementY||t.mozMovementY||t.webkitMovementY||0;e.mouseX+=r,e.mouseY+=n}else e.mouseX=t.clientX-e.element.offsetLeft,e.mouseY=t.clientY-e.element.offsetTop;return!1}function m(e,t){return c(e,B[t.button],!0),!1}function y(e,t){return c(e,B[t.button],!1),!1}function _(e,t){return e._pointerLockActive?(e.prevMouseX=e.mouseX=e.width>>1,e.prevMouseY=e.mouseY=e.height>>1):(e.prevMouseX=e.mouseX=t.clientX-e.element.offsetLeft,e.prevMouseY=e.mouseY=t.clientY-e.element.offsetTop),!1}function b(e){return g(e,0),!1}function w(e,t){var r=1;switch(t.deltaMode){case 0:r=1;break;case 1:r=12;break;case 2:r=e.height}return e.scroll[0]+=t.deltaX*r,e.scroll[1]+=t.deltaY*r,e.scroll[2]+=t.deltaZ*r||0,!1}function x(){return!1}function A(e){var t,r=R.length,n=e._curKeyState,i=e._releaseCount;for(t=0;r>t;++t)n[t]&&++i[t],n[t]=!1;return!1}function k(e){var t=0|e.element.clientWidth,r=0|e.element.clientHeight;(t!==e._width||r!==e._height)&&(e._width=t,e._height=r,e.emit("resize",t,r))}function j(){var e=document.createElement("div");return e.style.position="absolute",e.style.left="0px",e.style.right="0px",e.style.top="0px",e.style.bottom="0px",e.style.height="100%",e.style.overflow="hidden",document.body.appendChild(e),e}function E(e){e=e||{};var t=!!e.fullscreen,r=t;void 0!==typeof e.pointerLock&&(r=!!e.pointerLock);var n=new i;return n._tickRate=e.tickRate||30,n.frameSkip=e.frameSkip||5*(n._tickRate+5),n.stickyFullscreen=!!e.stickyFullscreen||!!e.sticky,n.stickyPointerLock=!!e.stickPointerLock||!e.sticky,e.bindings&&(n.bindings=bindings),setTimeout(function(){L(function(){var i=e.element;if("string"==typeof i){var o=document.querySelector(i);o||(o=document.getElementById(i)),o||(o=document.getElementByClass(i)[0]),o||(o=j()),n.element=o}else n.element="object"==typeof i&&i?i:"function"==typeof i?i():j();n.element.style&&(n.element.style["-webkit-touch-callout"]="none",n.element.style["-webkit-user-select"]="none",n.element.style["-khtml-user-select"]="none",n.element.style["-moz-user-select"]="none",n.element.style["-ms-user-select"]="none",n.element.style["user-select"]="none"),n._width=n.element.clientWidth,n._height=n.element.clientHeight;var a=k.bind(void 0,n);if("undefined"!=typeof MutationObserver){var c=new MutationObserver(a);c.observe(n.element,{attributes:!0,subtree:!0})}else n.element.addEventListener("DOMSubtreeModified",a,!1);window.addEventListener("resize",a,!1),window.addEventListener("keydown",d.bind(void 0,n),!0),window.addEventListener("keyup",p.bind(void 0,n),!0),n.element.oncontextmenu=x.bind(void 0,n),n.element.onmousedown=m.bind(void 0,n),n.element.onmouseup=y.bind(void 0,n),n.element.onmousemove=v.bind(void 0,n),n.element.onmouseenter=_.bind(void 0,n);var f=b.bind(void 0,n);n.element.onmouseleave=f,n.element.onmouseout=f,window.addEventListener("mouseleave",f,!0),window.addEventListener("mouseout",f,!0);var h=A.bind(void 0,n);n.element.onblur=h,window.addEventListener("blur",h,!0),I(n.element,w.bind(void 0,n),!1),document.body.style.overflow="hidden",document.body.style.height="100%";var g=u.bind(void 0,n);document.addEventListener("fullscreenchange",g,!1),document.addEventListener("mozfullscreenchange",g,!1),document.addEventListener("webkitfullscreenchange",g,!1),n.element.addEventListener("click",s.bind(void 0,n),!0);var E=l.bind(void 0,n);document.addEventListener("pointerlockchange",E,!1),document.addEventListener("mozpointerlockchange",E,!1),document.addEventListener("webkitpointerlockchange",E,!1),document.addEventListener("pointerlocklost",E,!1),document.addEventListener("webkitpointerlocklost",E,!1),document.addEventListener("mozpointerlocklost",E,!1),n.fullscreen=t,n.pointerLock=r,n.bind("mouse-left","mouse-1"),n.bind("mouse-right","mouse-3"),n.bind("mouse-middle","mouse-2"),n._lastTick=N(),n.startTime=N(),n.paused=!1,n.emit("init")})},0),n}var M=e("events").EventEmitter,F=e("util"),L=e("domready"),C=e("vkey"),S=e("invert-hash"),T=e("uniq"),P=e("lower-bound"),V=e("iota-array"),O=Math.min;e("./lib/raf-polyfill.js");var I=e("./lib/mousewheel-polyfill.js"),N=e("./lib/hrtime-polyfill.js"),q=function(){var e,t,r=Array(256);for(e=0;256>e;++e)r[e]="UNK";for(e in C)t=C[e],"<"===t.charAt(0)&&">"===t.charAt(t.length-1)&&(t=t.substring(1,t.length-1)),t=t.replace(/\s/g,"-"),r[parseInt(e)]=t;return r}(),R=T(Object.keys(S(q)));F.inherits(i,M);var D=i.prototype;D.keyNames=R,D.bind=function(e){var t;t=e in this.bindings?this.bindings[e]:[];for(var n,i=1,o=arguments.length;o>i;++i)if(n=arguments[i],r(n)>=0)t.push(n);else if(n in this.bindings)for(var a=this.bindings[n],s=0;a.length>s;++s)t.push(a[s]);t=T(t),t.length>0&&(this.bindings[e]=t)},D.unbind=function(e){e in this.bindings&&delete this.bindings[e]},D.down=function(e){return o(this._curKeyState,this.bindings,e)},D.wasDown=function(e){return this.down(e)||!!this.press(e)},D.up=function(e){return!this.down(e)},D.wasUp=function(e){return this.up(e)||!!this.release(e)},D.press=function(e){return a(this._pressCount,this.bindings,e)},D.release=function(e){return a(this._releaseCount,this.bindings,e)},Object.defineProperty(D,"paused",{get:function(){return this._paused},set:function(e){var t=!!e;t!==this._paused&&(this._paused?(this._paused=!1,this._lastTick=N()-Math.floor(this._frameTime*this._tickRate),this._tickInterval=setInterval(f,this._tickRate,this),this._rafHandle=requestAnimationFrame(this._render)):(this._paused=!0,this._frameTime=O(1,(N()-this._lastTick)/this._tickRate),clearInterval(this._tickInterval),cancelAnimationFrame(this._rafHandle)))}});var z=document.exitFullscreen||document.cancelFullscreen||document.cancelFullScreen||document.webkitCancelFullscreen||document.webkitCancelFullScreen||document.mozCancelFullscreen||document.mozCancelFullScreen||function(){};Object.defineProperty(D,"fullscreen",{get:function(){return this._fullscreenActive},set:function(e){var t=!!e;return t?(this._wantFullscreen=!0,s(this)):(this._wantFullscreen=!1,z.call(document)),this._fullscreenActive}});var U=document.exitPointerLock||document.webkitExitPointerLock||document.mozExitPointerLock||function(){};Object.defineProperty(D,"pointerLock",{get:function(){return this._pointerLockActive},set:function(e){var t=!!e;return t?(this._wantPointerLock=!0,s(this)):(this._wantPointerLock=!1,U.call(document)),this._pointerLockActive}}),Object.defineProperty(D,"width",{get:function(){return this.element.clientWidth}}),Object.defineProperty(D,"height",{get:function(){return this.element.clientHeight}});var B=V(32).map(function(e){return r("mouse-"+(e+1))});t.exports=E},{events:13,util:17,"./lib/raf-polyfill.js":15,"./lib/mousewheel-polyfill.js":14,"./lib/hrtime-polyfill.js":16,domready:26,vkey:27,"invert-hash":28,uniq:29,"lower-bound":30,"iota-array":31}],23:[function(e,t){"use strict";function r(e,t,r){this.gl=e,this.ext=t,this.handle=r}function n(e,t){return new r(e,t,t.createVertexArrayOES())}var i=e("./do-bind.js");r.prototype.bind=function(){this.ext.bindVertexArrayOES(this.handle)},r.prototype.unbind=function(){this.ext.bindVertexArrayOES(null)},r.prototype.dispose=function(){this.ext.deleteVertexArrayOES(this.handle)},r.prototype.update=function(e,t){this.bind(),i(this.gl,e,t),this.unbind()},t.exports=n},{"./do-bind.js":32}],24:[function(e,t){"use strict";function r(e){this.gl=e,this.elements=null,this.attributes=null}function n(e){return new r(e)}var i=e("./do-bind.js");r.prototype.bind=function(){i(this.gl,this.elements,this.attributes)},r.prototype.update=function(e,t){this.elements=e,this.attributes=t},r.prototype.dispose=function(){},r.prototype.unbind=function(){},t.exports=n},{"./do-bind.js":32}],21:[function(e,t){"use strict";function r(e,t){for(var r=1,n=e.length,i=e[0],o=e[0],a=1;n>a;++a)if(o=i,i=e[a],t(i,o)){if(a===r){r++;continue}e[r++]=i}return e.length=r,e}function n(e){for(var t=1,r=e.length,n=e[0],i=e[0],o=1;r>o;++o,i=n)if(i=n,n=e[o],n!==i){if(o===t){t++;continue}e[t++]=n}return e.length=t,e}function i(e,t,i){return 0===e.length?[]:t?(i||e.sort(t),r(e,t)):(i||e.sort(),n(e))}t.exports=i},{}],25:[function(e,t){"use strict";function r(e){for(var t=0;i.length>t;++t){var r=i[t];if(0===e.indexOf(r))return e.slice(r.length)}return e}function n(e){if(e._webglew_struct)return e._webglew_struct;for(var t={},n=e.getSupportedExtensions(),i=0;n.length>i;++i){var o=e.getExtension(n[i]);o&&(t[n[i]]=o,t[r(n[i])]=o)}return e._webglew_struct=t,t}var i=["WEBKIT_","MOZ_"];t.exports=n},{}],26:[function(e,t){!function(e,r){t!==void 0?t.exports=r():"function"==typeof define&&"object"==typeof define.amd?define(r):this[e]=r()}("domready",function(e){function t(e){for(p=1;e=n.shift();)e()}var r,n=[],i=!1,o=document,a=o.documentElement,s=a.doScroll,u="DOMContentLoaded",l="addEventListener",c="onreadystatechange",f="readyState",h=s?/^loaded|^c/:/^loaded|c/,p=h.test(o[f]);return o[l]&&o[l](u,r=function(){o.removeEventListener(u,r,i),t()},i),s&&o.attachEvent(c,r=function(){/^c/.test(o[f])&&(o.detachEvent(c,r),t())}),e=s?function(t){self!=top?p?t():n.push(t):function(){try{a.doScroll("left")}catch(r){return setTimeout(function(){e(t)},50)}t()}()}:function(e){p?e():n.push(e)}})},{}],27:[function(e,t){(function(){var e,r="undefined"!=typeof window?window.navigator.userAgent:"",n=/OS X/.test(r),i=/Opera/.test(r),o=!/like Gecko/.test(r)&&!i,a=t.exports={0:n?"<menu>":"<UNK>",1:"<mouse 1>",2:"<mouse 2>",3:"<break>",4:"<mouse 3>",5:"<mouse 4>",6:"<mouse 5>",8:"<backspace>",9:"<tab>",12:"<clear>",13:"<enter>",16:"<shift>",17:"<control>",18:"<alt>",19:"<pause>",20:"<caps-lock>",21:"<ime-hangul>",23:"<ime-junja>",24:"<ime-final>",25:"<ime-kanji>",27:"<escape>",28:"<ime-convert>",29:"<ime-nonconvert>",30:"<ime-accept>",31:"<ime-mode-change>",27:"<escape>",32:"<space>",33:"<page-up>",34:"<page-down>",35:"<end>",36:"<home>",37:"<left>",38:"<up>",39:"<right>",40:"<down>",41:"<select>",42:"<print>",43:"<execute>",44:"<snapshot>",45:"<insert>",46:"<delete>",47:"<help>",91:"<meta>",92:"<meta>",93:n?"<meta>":"<menu>",95:"<sleep>",106:"<num-*>",107:"<num-+>",108:"<num-enter>",109:"<num-->",110:"<num-.>",111:"<num-/>",144:"<num-lock>",145:"<scroll-lock>",160:"<shift-left>",161:"<shift-right>",162:"<control-left>",163:"<control-right>",164:"<alt-left>",165:"<alt-right>",166:"<browser-back>",167:"<browser-forward>",168:"<browser-refresh>",169:"<browser-stop>",170:"<browser-search>",171:"<browser-favorites>",172:"<browser-home>",173:n&&o?"-":"<volume-mute>",174:"<volume-down>",175:"<volume-up>",176:"<next-track>",177:"<prev-track>",178:"<stop>",179:"<play-pause>",180:"<launch-mail>",181:"<launch-media-select>",182:"<launch-app 1>",183:"<launch-app 2>",186:";",187:"=",188:",",189:"-",190:".",191:"/",192:"`",219:"[",220:"\\",221:"]",222:"'",223:"<meta>",224:"<meta>",226:"<alt-gr>",229:"<ime-process>",231:i?"`":"<unicode>",246:"<attention>",247:"<crsel>",248:"<exsel>",249:"<erase-eof>",250:"<play>",251:"<zoom>",252:"<no-name>",253:"<pa-1>",254:"<clear>"};for(e=58;65>e;++e)a[e]=String.fromCharCode(e);for(e=48;58>e;++e)a[e]=e-48+"";for(e=65;91>e;++e)a[e]=String.fromCharCode(e);for(e=96;107>e;++e)a[e]="<num-"+(e-96)+">";for(e=112;136>e;++e)a[e]="F"+(e-111)})()},{}],28:[function(e,t){"use strict";function r(e){var t={};for(var r in e)e.hasOwnProperty(r)&&(t[e[r]]=r);return t}t.exports=r},{}],29:[function(e,t){"use strict";function r(e,t){for(var r=1,n=e.length,i=e[0],o=e[0],a=1;n>a;++a)if(o=i,i=e[a],t(i,o)){if(a===r){r++;continue}e[r++]=i}return e.length=r,e}function n(e){for(var t=1,r=e.length,n=e[0],i=e[0],o=1;r>o;++o,i=n)if(i=n,n=e[o],n!==i){if(o===t){t++;continue}e[t++]=n}return e.length=t,e}function i(e,t,i){return 0===e.length?[]:t?(i||e.sort(t),r(e,t)):(i||e.sort(),n(e))}t.exports=i},{}],30:[function(e,t){"use strict";function r(e,t,r,n,i){for(n=0|n,i=0|i;i>n;){var o=n+i>>>1,a=r(t,e[o]);0>a?i=o-1:a>0?n=o+1:i=o}return 0>=r(e[n],t)?n:n-1}function n(e,t,r,n){for(r=0|r,n=0|n;n>r;){var i=r+n>>>1;e[i]>t?n=i-1:t>e[i]?r=i+1:n=i}return t>=e[r]?r:r-1}function i(e,t,i,o,a){return o||(o=0),"number"!=typeof a&&(a=e.length-1),i?r(e,t,i,o,a):n(e,t,o,a)}t.exports=i},{}],31:[function(e,t){"use strict";function r(e){for(var t=Array(e),r=0;e>r;++r)t[r]=r;return t}t.exports=r},{}],32:[function(e,t){"use strict";function r(e,t,r){t?t.bind():e.bindBuffer(e.ELEMENT_ARRAY_BUFFER,null);var n=0|e.getParameter(e.MAX_VERTEX_ATTRIBS);if(r){if(r.length>n)throw Error("Too many vertex attributes");for(var i=0;r.length>i;++i){var o=r[i];if(o.buffer){var a=o.buffer,s=o.size||4,u=o.type||e.FLOAT,l=o.normalized?e.TRUE:e.FALSE,c=o.stride||0,f=o.offset||0;a.bind(),e.vertexAttribPointer(i,s,u,l,c,f),e.enableVertexAttribArray(i)}else{if("number"==typeof o)e.vertexAttrib1f(i,o);else if(1===o.length)e.vertexAttrib1f(i,o[0]);else if(2===o.length)e.vertexAttrib2f(i,o[0],o[1]);else if(3===o.length)e.vertexAttrib3f(i,o[0],o[1],o[2]);else{if(4!==o.length)throw Error("Invalid vertex attribute");e.vertexAttrib4f(i,o[0],o[1],o[2],o[3])}e.disableVertexAttribArray(i)}}for(;n>i;++i)e.disableVertexAttribArray(i)}else{e.bindBuffer(e.ARRAY_BUFFER,null);for(var i=0;n>i;++i)e.disableVertexAttribArray(i)}}t.exports=r},{}],5:[function(e,t){"use strict";function r(e,t){return e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[4],e[4]=t[5],e[5]=t[6],e[6]=t[8],e[7]=t[9],e[8]=t[10],e
}function n(e,t){var r,n=t[0]+t[4]+t[8];if(n>0)r=Math.sqrt(n+1),e[3]=.5*r,r=.5/r,e[0]=(t[7]-t[5])*r,e[1]=(t[2]-t[6])*r,e[2]=(t[3]-t[1])*r;else{var i=0;t[4]>t[0]&&(i=1),t[8]>t[3*i+i]&&(i=2);var o=(i+1)%3,a=(i+2)%3;r=Math.sqrt(t[3*i+i]-t[3*o+o]-t[3*a+a]+1),e[i]=.5*r,r=.5/r,e[3]=(t[3*a+o]-t[3*o+a])*r,e[o]=(t[3*o+i]+t[3*i+o])*r,e[a]=(t[3*a+i]+t[3*i+a])*r}return e}function i(e,t,r){this.rotation=e,this.center=t,this.distance=r}function o(e,t){var r=t[0],n=t[1];t[2];var i=r*r+n*n;i>1&&(i=1),e[0]=-t[0],e[1]=t[1],e[2]=t[2]||Math.sqrt(1-i),e[3]=0}function a(e,t,r){e=e||[0,0,-1],t=t||[0,0,0],r=r||[0,1,0];var n=new i(c.create(),u.create(),1);return n.lookAt(e,t,r),n}var s=e("gl-matrix"),u=s.vec3;s.mat3;var l=s.mat4,c=s.quat,f=new Float32Array(16),h=new Float32Array(16),p=i.prototype;p.view=function(e){return e||(e=l.create()),h[0]=h[1]=0,h[2]=-this.distance,l.fromRotationTranslation(e,c.conjugate(f,this.rotation),h),l.translate(e,e,u.negate(f,this.center)),e},p.lookAt=function(e,t,i){l.lookAt(f,e,t,i),r(f,f),n(this.rotation,f),u.copy(this.center,t),this.distance=u.distance(e,t)},p.pan=function(e){var t=this.distance;f[0]=-t*(e[0]||0),f[1]=t*(e[1]||0),f[2]=t*(e[2]||0),u.transformQuat(f,f,this.rotation),u.add(this.center,this.center,f)},p.zoom=function(e){this.distance+=e,0>this.distance&&(this.distance=0)},p.rotate=function(e,t){o(f,e),o(h,t),c.invert(h,h),c.multiply(f,f,h),1e-6>c.length(f)||(c.multiply(this.rotation,this.rotation,f),c.normalize(this.rotation,this.rotation))},t.exports=a},{"gl-matrix":3}],18:[function(e,t,r){(function(t){"use strict";var n=e("bit-twiddle"),i=e("dup");t.__TYPEDARRAY_POOL||(t.__TYPEDARRAY_POOL={UINT8:i([32,0]),UINT16:i([32,0]),UINT32:i([32,0]),INT8:i([32,0]),INT16:i([32,0]),INT32:i([32,0]),FLOAT:i([32,0]),DOUBLE:i([32,0]),DATA:i([32,0])});var o=t.__TYPEDARRAY_POOL,a=o.UINT8,s=o.UINT16,u=o.UINT32,l=o.INT8,c=o.INT16,f=o.INT32,h=o.FLOAT,p=o.DOUBLE,d=o.DATA;r.free=function(e){if(e instanceof ArrayBuffer){var t=0|e.byteLength,r=n.log2(t);d[r].push(e)}else{var t=0|e.length,r=n.log2(t);e instanceof Uint8Array?a[r].push(e):e instanceof Uint16Array?s[r].push(e):e instanceof Uint32Array?u[r].push(e):e instanceof Int8Array?l[r].push(e):e instanceof Int16Array?c[r].push(e):e instanceof Int32Array?f[r].push(e):e instanceof Float32Array?h[r].push(e):e instanceof Float64Array&&p[r].push(e)}},r.freeUint8=function(e){a[n.log2(e.length)].push(e)},r.freeUint16=function(e){s[n.log2(e.length)].push(e)},r.freeUint32=function(e){u[n.log2(e.length)].push(e)},r.freeInt8=function(e){l[n.log2(e.length)].push(e)},r.freeInt16=function(e){c[n.log2(e.length)].push(e)},r.freeInt32=function(e){f[n.log2(e.length)].push(e)},r.freeFloat32=r.freeFloat=function(e){h[n.log2(e.length)].push(e)},r.freeFloat64=r.freeDouble=function(e){p[n.log2(e.length)].push(e)},r.freeArrayBuffer=function(e){d[n.log2(e.length)].push(e)},r.malloc=function(e,t){e=n.nextPow2(e);var r=n.log2(e);if(void 0===t){var i=d[r];if(i.length>0){var o=i[i.length-1];return i.pop(),o}return new ArrayBuffer(e)}switch(t){case"uint8":var g=a[r];if(g.length>0){var v=g[g.length-1];return g.pop(),v}return new Uint8Array(e);case"uint16":var m=s[r];if(m.length>0){var y=m[m.length-1];return m.pop(),y}return new Uint16Array(e);case"uint32":var _=u[r];if(_.length>0){var b=_[_.length-1];return _.pop(),b}return new Uint32Array(e);case"int8":var w=l[r];if(w.length>0){var x=w[w.length-1];return w.pop(),x}return new Int8Array(e);case"int16":var A=c[r];if(A.length>0){var k=A[A.length-1];return A.pop(),k}return new Int16Array(e);case"int32":var j=f[r];if(j.length>0){var E=j[j.length-1];return j.pop(),E}return new Int32Array(e);case"float":case"float32":var M=h[r];if(M.length>0){var F=M[M.length-1];return M.pop(),F}return new Float32Array(e);case"double":case"float64":var L=p[r];if(L.length>0){var C=L[L.length-1];return L.pop(),C}return new Float64Array(e);default:return null}return null},r.mallocUint8=function(e){e=n.nextPow2(e);var t=n.log2(e),r=a[t];if(r.length>0){var i=r[r.length-1];return r.pop(),i}return new Uint8Array(e)},r.mallocUint16=function(e){e=n.nextPow2(e);var t=n.log2(e),r=s[t];if(r.length>0){var i=r[r.length-1];return r.pop(),i}return new Uint16Array(e)},r.mallocUint32=function(e){e=n.nextPow2(e);var t=n.log2(e),r=u[t];if(r.length>0){var i=r[r.length-1];return r.pop(),i}return new Uint32Array(e)},r.mallocInt8=function(e){e=n.nextPow2(e);var t=n.log2(e),r=l[t];if(r.length>0){var i=r[r.length-1];return r.pop(),i}return new Int8Array(e)},r.mallocInt16=function(e){e=n.nextPow2(e);var t=n.log2(e),r=c[t];if(r.length>0){var i=r[r.length-1];return r.pop(),i}return new Int16Array(e)},r.mallocInt32=function(e){e=n.nextPow2(e);var t=n.log2(e),r=f[t];if(r.length>0){var i=r[r.length-1];return r.pop(),i}return new Int32Array(e)},r.mallocFloat32=r.mallocFloat=function(e){e=n.nextPow2(e);var t=n.log2(e),r=h[t];if(r.length>0){var i=r[r.length-1];return r.pop(),i}return new Float32Array(e)},r.mallocFloat64=r.mallocDouble=function(e){e=n.nextPow2(e);var t=n.log2(e),r=p[t];if(r.length>0){var i=r[r.length-1];return r.pop(),i}return new Float64Array(e)},r.mallocArrayBuffer=function(e){e=n.nextPow2(e);var t=n.log2(e),r=d[t];if(r.length>0){var i=r[r.length-1];return r.pop(),i}return new ArrayBuffer(e)},r.clearCache=function(){for(var e=0;32>e;++e)a[e].length=0,s[e].length=0,u[e].length=0,l[e].length=0,c[e].length=0,f[e].length=0,h[e].length=0,p[e].length=0,d[e].length=0}})(self)},{"bit-twiddle":33,dup:34}],19:[function(e,t,r){"use strict";function n(e){if(!e)return s;for(var t=0;e.args.length>t;++t){var r=e.args[t];e.args[t]=0===t?{name:r,lvalue:!0,rvalue:!!e.rvalue,count:e.count||1}:{name:r,lvalue:!1,rvalue:!0,count:1}}return e.thisVars||(e.thisVars=[]),e.localVars||(e.localVars=[]),e}function i(e){return a({args:e.args,pre:n(e.pre),body:n(e.body),post:n(e.proc),funcName:e.funcName})}function o(e){for(var t=[],r=0;e.args.length>r;++r)t.push("a"+r);var n=Function("P",["return function ",e.funcName,"_ndarrayops(",t.join(","),") {P(",t.join(","),");return a0}"].join(""));return n(i(e))}var a=e("cwise-compiler"),s={body:"",args:[],thisVars:[],localVars:[]},u={add:"+",sub:"-",mul:"*",div:"/",mod:"%",band:"&",bor:"|",bxor:"^",lshift:"<<",rshift:">>",rrshift:">>>"};(function(){for(var e in u){var t=u[e];r[e]=o({args:["array","array","array"],body:{args:["a","b","c"],body:"a=b"+t+"c"},funcName:e}),r[e+"eq"]=o({args:["array","array"],body:{args:["a","b"],body:"a"+t+"=b"},rvalue:!0,funcName:e+"eq"}),r[e+"s"]=o({args:["array","array","scalar"],body:{args:["a","b","s"],body:"a=b"+t+"s"},funcName:e+"s"}),r[e+"seq"]=o({args:["array","scalar"],body:{args:["a","s"],body:"a"+t+"=s"},rvalue:!0,funcName:e+"seq"})}})();var l={not:"!",bnot:"~",neg:"-",recip:"1.0/"};(function(){for(var e in l){var t=l[e];r[e]=o({args:["array","array"],body:{args:["a","b"],body:"a="+t+"b"},funcName:e}),r[e+"eq"]=o({args:["array"],body:{args:["a"],body:"a="+t+"a"},rvalue:!0,count:2,funcName:e+"eq"})}})();var c={and:"&&",or:"||",eq:"===",neq:"!==",lt:"<",gt:">",leq:"<=",geq:">="};(function(){for(var e in c){var t=c[e];r[e]=o({args:["array","array","array"],body:{args:["a","b","c"],body:"a=b"+t+"c"},funcName:e}),r[e+"s"]=o({args:["array","array","scalar"],body:{args:["a","b","s"],body:"a=b"+t+"s"},funcName:e+"s"}),r[e+"eq"]=o({args:["array","array"],body:{args:["a","b"],body:"a=a"+t+"b"},rvalue:!0,count:2,funcName:e+"eq"}),r[e+"seq"]=o({args:["array","scalar"],body:{args:["a","s"],body:"a=a"+t+"s"},rvalue:!0,count:2,funcName:e+"seq"})}})();var f=["abs","acos","asin","atan","ceil","cos","exp","floor","log","round","sin","sqrt","tan"];(function(){for(var e=0;f.length>e;++e){var t=f[e];r[t]=o({args:["array","array"],pre:{args:[],body:"this_f=Math."+t,thisVars:["this_f"]},body:{args:["a","b"],body:"a=this_f(b)",thisVars:["this_f"]},funcName:t}),r[t+"eq"]=o({args:["array"],pre:{args:[],body:"this_f=Math."+t,thisVars:["this_f"]},body:{args:["a"],body:"a=this_f(a)",thisVars:["this_f"]},rvalue:!0,count:2,funcName:t+"eq"})}})();var h=["max","min","atan2","pow"];(function(){for(var e=0;h.length>e;++e){var t=h[e];r[t]=o({args:["array","array","array"],pre:{args:[],body:"this_f=Math."+t,thisVars:["this_f"]},body:{args:["a","b","c"],body:"a=this_f(b,c)",thisVars:["this_f"]},funcName:t}),r[t+"s"]=o({args:["array","array","scalar"],pre:{args:[],body:"this_f=Math."+t,thisVars:["this_f"]},body:{args:["a","b","c"],body:"a=this_f(b,c)",thisVars:["this_f"]},funcName:t+"s"}),r[t+"eq"]=o({args:["array","array"],pre:{args:[],body:"this_f=Math."+t,thisVars:["this_f"]},body:{args:["a","b"],body:"a=this_f(a,b)",thisVars:["this_f"]},rvalue:!0,count:2,funcName:t+"eq"}),r[t+"seq"]=o({args:["array","scalar"],pre:{args:[],body:"this_f=Math."+t,thisVars:["this_f"]},body:{args:["a","b"],body:"a=this_f(a,b)",thisVars:["this_f"]},rvalue:!0,count:2,funcName:t+"seq"})}})();var p=["atan2","pow"];(function(){for(var e=0;p.length>e;++e){var t=p[e];r[t+"op"]=o({args:["array","array","array"],pre:{args:[],body:"this_f=Math."+t,thisVars:["this_f"]},body:{args:["a","b","c"],body:"a=this_f(c,b)",thisVars:["this_f"]},funcName:t+"op"}),r[t+"ops"]=o({args:["array","array","scalar"],pre:{args:[],body:"this_f=Math."+t,thisVars:["this_f"]},body:{args:["a","b","c"],body:"a=this_f(c,b)",thisVars:["this_f"]},funcName:t+"ops"}),r[t+"opeq"]=o({args:["array","array"],pre:{args:[],body:"this_f=Math."+t,thisVars:["this_f"]},body:{args:["a","b"],body:"a=this_f(b,a)",thisVars:["this_f"]},rvalue:!0,count:2,funcName:t+"opeq"}),r[t+"opseq"]=o({args:["array","scalar"],pre:{args:[],body:"this_f=Math."+t,thisVars:["this_f"]},body:{args:["a","b"],body:"a=this_f(b,a)",thisVars:["this_f"]},rvalue:!0,count:2,funcName:t+"opseq"})}})(),r.any=a({args:["array"],pre:s,body:{args:[{name:"a",lvalue:!1,rvalue:!0,count:1}],body:"if(a){return true}",localVars:[],thisVars:[]},post:{args:[],localVars:[],thisVars:[],body:"return false"},funcName:"any"}),r.all=a({args:["array"],pre:s,body:{args:[{name:"x",lvalue:!1,rvalue:!0,count:1}],body:"if(!x){return false}",localVars:[],thisVars:[]},post:{args:[],localVars:[],thisVars:[],body:"return true"},funcName:"all"}),r.sum=a({args:["array"],pre:{args:[],localVars:[],thisVars:["this_s"],body:"this_s=0"},body:{args:[{name:"a",lvalue:!1,rvalue:!0,count:1}],body:"this_s+=a",localVars:[],thisVars:["this_s"]},post:{args:[],localVars:[],thisVars:["this_s"],body:"return this_s"},funcName:"sum"}),r.prod=a({args:["array"],pre:{args:[],localVars:[],thisVars:["this_s"],body:"this_s=1"},body:{args:[{name:"a",lvalue:!1,rvalue:!0,count:1}],body:"this_s*=a",localVars:[],thisVars:["this_s"]},post:{args:[],localVars:[],thisVars:["this_s"],body:"return this_s"},funcName:"prod"}),r.norm2squared=a({args:["array"],pre:{args:[],localVars:[],thisVars:["this_s"],body:"this_s=0"},body:{args:[{name:"a",lvalue:!1,rvalue:!0,count:2}],body:"this_s+=a*a",localVars:[],thisVars:["this_s"]},post:{args:[],localVars:[],thisVars:["this_s"],body:"return this_s"},funcName:"norm2squared"}),r.norm2=a({args:["array"],pre:{args:[],localVars:[],thisVars:["this_s"],body:"this_s=0"},body:{args:[{name:"a",lvalue:!1,rvalue:!0,count:2}],body:"this_s+=a*a",localVars:[],thisVars:["this_s"]},post:{args:[],localVars:[],thisVars:["this_s"],body:"return Math.sqrt(this_s)"},funcName:"norm2"}),r.norminf=a({args:["array"],pre:{args:[],localVars:[],thisVars:["this_s"],body:"this_s=0"},body:{args:[{name:"a",lvalue:!1,rvalue:!0,count:4}],body:"if(-a>this_s){this_s=-a}else if(a>this_s){this_s=a}",localVars:[],thisVars:["this_s"]},post:{args:[],localVars:[],thisVars:["this_s"],body:"return this_s"},funcName:"norminf"}),r.norm1=a({args:["array"],pre:{args:[],localVars:[],thisVars:["this_s"],body:"this_s=0"},body:{args:[{name:"a",lvalue:!1,rvalue:!0,count:3}],body:"this_s+=a<0?-a:a",localVars:[],thisVars:["this_s"]},post:{args:[],localVars:[],thisVars:["this_s"],body:"return this_s"},funcName:"norm1"}),r.sup=a({args:["array"],pre:{body:"this_h=-Infinity",args:[],thisVars:["this_h"],localVars:[]},body:{body:"if(_inline_1_arg0_>this_h)this_h=_inline_1_arg0_",args:[{name:"_inline_1_arg0_",lvalue:!1,rvalue:!0,count:2}],thisVars:["this_h"],localVars:[]},post:{body:"return this_h",args:[],thisVars:["this_h"],localVars:[]}}),r.inf=a({args:["array"],pre:{body:"this_h=Infinity",args:[],thisVars:["this_h"],localVars:[]},body:{body:"if(_inline_1_arg0_<this_h)this_h=_inline_1_arg0_",args:[{name:"_inline_1_arg0_",lvalue:!1,rvalue:!0,count:2}],thisVars:["this_h"],localVars:[]},post:{body:"return this_h",args:[],thisVars:["this_h"],localVars:[]}}),r.argmin=a({args:["index","array","shape"],pre:{body:"{this_v=Infinity;this_i=_inline_0_arg2_.slice(0)}",args:[{name:"_inline_0_arg0_",lvalue:!1,rvalue:!1,count:0},{name:"_inline_0_arg1_",lvalue:!1,rvalue:!1,count:0},{name:"_inline_0_arg2_",lvalue:!1,rvalue:!0,count:1}],thisVars:["this_i","this_v"],localVars:[]},body:{body:"{if(_inline_1_arg1_<this_v){this_v=_inline_1_arg1_;for(var _inline_1_k=0;_inline_1_k<_inline_1_arg0_.length;++_inline_1_k){this_i[_inline_1_k]=_inline_1_arg0_[_inline_1_k]}}}",args:[{name:"_inline_1_arg0_",lvalue:!1,rvalue:!0,count:2},{name:"_inline_1_arg1_",lvalue:!1,rvalue:!0,count:2}],thisVars:["this_i","this_v"],localVars:["_inline_1_k"]},post:{body:"{return this_i}",args:[],thisVars:["this_i"],localVars:[]}}),r.argmax=a({args:["index","array","shape"],pre:{body:"{this_v=-Infinity;this_i=_inline_0_arg2_.slice(0)}",args:[{name:"_inline_0_arg0_",lvalue:!1,rvalue:!1,count:0},{name:"_inline_0_arg1_",lvalue:!1,rvalue:!1,count:0},{name:"_inline_0_arg2_",lvalue:!1,rvalue:!0,count:1}],thisVars:["this_i","this_v"],localVars:[]},body:{body:"{if(_inline_1_arg1_>this_v){this_v=_inline_1_arg1_;for(var _inline_1_k=0;_inline_1_k<_inline_1_arg0_.length;++_inline_1_k){this_i[_inline_1_k]=_inline_1_arg0_[_inline_1_k]}}}",args:[{name:"_inline_1_arg0_",lvalue:!1,rvalue:!0,count:2},{name:"_inline_1_arg1_",lvalue:!1,rvalue:!0,count:2}],thisVars:["this_i","this_v"],localVars:["_inline_1_k"]},post:{body:"{return this_i}",args:[],thisVars:["this_i"],localVars:[]}}),r.random=o({args:["array"],pre:{args:[],body:"this_f=Math.random",thisVars:["this_f"]},body:{args:["a"],body:"a=this_f()",thisVars:["this_f"]},funcName:"random"}),r.assign=o({args:["array","array"],body:{args:["a","b"],body:"a=b"},funcName:"assign"}),r.assigns=o({args:["array","scalar"],body:{args:["a","b"],body:"a=b"},funcName:"assigns"})},{"cwise-compiler":35}],20:[function(e,t){"use strict";function r(e,t){return e[0]-t[0]}function n(){var e,t=this.stride,n=Array(t.length);for(e=0;n.length>e;++e)n[e]=[Math.abs(t[e]),e];n.sort(r);var i=Array(n.length);for(e=0;i.length>e;++e)i[e]=n[e][1];return i}function i(e,t){if(0===t){var r=Function([l,"ZeroArray.prototype.dtype='"+e+"'","return function construct_ZeroArray(a,b,c,d){return new ZeroArray(a,d)}"].join("\n"));return r()}var i="generic"===e,o=["'use strict'"],a=s(t),f=a.map(function(e){return"i"+e}),h="this.offset+"+a.map(function(e){return["this._stride",e,"*i",e].join("")}).join("+"),p=["View",t,"d",e].join("");o.push(["function ",p,"(a,",a.map(function(e){return"b"+e}).join(","),",",a.map(function(e){return"c"+e}).join(","),",d){this.data=a"].join(""));for(var d=0;t>d;++d)o.push(["this._shape",d,"=b",d,"|0"].join(""));for(var d=0;t>d;++d)o.push(["this._stride",d,"=c",d,"|0"].join(""));o.push("this.offset=d|0}"),o.push(["var proto=",p,".prototype"].join("")),o.push(["proto.dtype='",e,"'"].join("")),o.push("proto.dimension="+t);var g=["VStride",t,"d",e].join(""),v=["VShape",t,"d",e].join(""),m={stride:g,shape:v};for(var y in m){var _=m[y];o.push(["function ",_,"(v) {this._v=v} var aproto=",_,".prototype"].join("")),o.push(["aproto.length=",t].join(""));for(var b=[],d=0;t>d;++d)b.push(["this._v._",y,d].join(""));o.push(["aproto.toJSON=function ",_,"_toJSON(){return [",b.join(","),"]}"].join("")),o.push(["aproto.toString=function ",_,"_toString(){return [",b.join(","),"].join()}"].join(""));for(var d=0;t>d;++d)o.push(["Object.defineProperty(aproto,",d,",{get:function(){return this._v._",y,d,"},set:function(v){return this._v._",y,d,"=v|0},enumerable:true})"].join(""));for(var d=0;u.length>d;++d)u[d]in Array.prototype&&o.push(["aproto.",u[d],"=Array.prototype.",u[d]].join(""));o.push(["Object.defineProperty(proto,'",y,"',{get:function ",_,"_get(){return new ",_,"(this)},set: function ",_,"_set(v){"].join(""));for(var d=0;t>d;++d)o.push(["this._",y,d,"=v[",d,"]|0"].join(""));o.push("return v}})")}o.push(["Object.defineProperty(proto,'size',{get:function ",p,"_size(){return ",a.map(function(e){return["this._shape",e].join("")}).join("*"),"}})"].join("")),1===t?o.push("proto.order=[0]"):(o.push("Object.defineProperty(proto,'order',{get:"),4>t?(o.push(["function ",p,"_order(){"].join("")),2===t?o.push("return (Math.abs(this._stride0)>Math.abs(this._stride1))?[1,0]:[0,1]}})"):3===t&&o.push("var s0=Math.abs(this._stride0),s1=Math.abs(this._stride1),s2=Math.abs(this._stride2);if(s0>s1){if(s1>s2){return [2,1,0];}else if(s0>s2){return [1,2,0];}else{return [1,0,2];}}else if(s0>s2){return [2,0,1];}else if(s2>s1){return [0,1,2];}else{return [0,2,1];}}})")):o.push("ORDER})")),o.push(["proto.set=function ",p,"_set(",f.join(","),",v){"].join("")),i?o.push(["return this.data.set(",h,",v)}"].join("")):o.push(["return this.data[",h,"]=v}"].join("")),o.push(["proto.get=function ",p,"_get(",f.join(","),"){"].join("")),i?o.push(["return this.data.get(",h,")}"].join("")):o.push(["return this.data[",h,"]}"].join("")),o.push(["proto.hi=function ",p,"_hi(",f.join(","),"){return new ",p,"(this.data,",a.map(function(e){return["(typeof i",e,"!=='number'||i",e,"<0)?this._shape",e,":i",e,"|0"].join("")}).join(","),",",a.map(function(e){return"this._stride"+e}).join(","),",this.offset)}"].join(""));var w=a.map(function(e){return"a"+e+"=this._shape"+e}),x=a.map(function(e){return"c"+e+"=this._stride"+e});o.push(["proto.lo=function ",p,"_lo(",f.join(","),"){var b=this.offset,d=0,",w.join(","),",",x.join(",")].join(""));for(var d=0;t>d;++d)o.push(["if(typeof i",d,"==='number'&&i",d,">=0){d=i",d,"|0;b+=c",d,"*d;a",d,"-=d}"].join(""));o.push(["return new ",p,"(this.data,",a.map(function(e){return"a"+e}).join(","),",",a.map(function(e){return"c"+e}).join(","),",b)}"].join("")),o.push(["proto.step=function ",p,"_step(",f.join(","),"){var ",a.map(function(e){return"a"+e+"=this._shape"+e}).join(","),",",a.map(function(e){return"b"+e+"=this._stride"+e}).join(","),",c=this.offset,d=0,ceil=Math.ceil"].join(""));for(var d=0;t>d;++d)o.push(["if(typeof i",d,"==='number'){d=i",d,"|0;if(d<0){c+=b",d,"*(a",d,"-1);a",d,"=ceil(-a",d,"/d)}else{a",d,"=ceil(a",d,"/d)}b",d,"*=d}"].join(""));o.push(["return new ",p,"(this.data,",a.map(function(e){return"a"+e}).join(","),",",a.map(function(e){return"b"+e}).join(","),",c)}"].join(""));for(var A=Array(t),k=Array(t),d=0;t>d;++d)A[d]=["a[i",d,"|0]"].join(""),k[d]=["b[i",d,"|0]"].join("");o.push(["proto.transpose=function ",p,"_transpose(",f,"){var a=this.shape,b=this.stride;return new ",p,"(this.data,",A.join(","),",",k.join(","),",this.offset)}"].join("")),o.push(["proto.pick=function ",p,"_pick(",f,"){var a=[],b=[],c=this.offset"].join(""));for(var d=0;t>d;++d)o.push(["if(typeof i",d,"==='number'&&i",d,">=0){c=(c+this._stride",d,"*i",d,")|0}else{a.push(this._shape",d,");b.push(this._stride",d,")}"].join(""));o.push("var ctor=CTOR_LIST[a.length];return ctor(this.data,a,b,c)}"),o.push(["return function construct_",p,"(data,shape,stride,offset){return new ",p,"(data,",a.map(function(e){return"shape["+e+"]"}).join(","),",",a.map(function(e){return"stride["+e+"]"}).join(","),",offset)}"].join(""));var j=Function("CTOR_LIST","ORDER",o.join("\n"));return j(c[e],n)}function o(e){return e instanceof Float64Array?"float64":e instanceof Float32Array?"float32":e instanceof Int32Array?"int32":e instanceof Uint32Array?"uint32":e instanceof Uint8Array?"uint8":e instanceof Uint16Array?"uint16":e instanceof Int16Array?"int16":e instanceof Int8Array?"int8":e instanceof Array?"array":"generic"}function a(e,t,r,n){void 0===t&&(t=[e.length]);var a=t.length;if(void 0===r){r=Array(a);for(var s=a-1,u=1;s>=0;--s)r[s]=u,u*=t[s]}if(void 0===n){n=0;for(var s=0;a>s;++s)0>r[s]&&(n-=(t[s]-1)*r[s])}for(var l=o(e),f=c[l];a>=f.length;)f.push(i(l,f.length));var h=f[a];return h(e,t,r,n)}var s=e("iota-array"),u=["concat","join","slice","toString","indexOf","lastIndexOf","forEach","every","some","filter","map","reduce","reduceRight"],l="function ZeroArray(a,d) {this.data = a;this.offset = d};var proto=ZeroArray.prototype;proto.size=0;proto.shape=[];proto.stride=[];proto.order=[];proto.get=proto.set=function() {return Number.NaN};proto.lo=proto.hi=proto.transpose=proto.step=proto.pick=function() {return new ZeroArray(this.data,this.shape,this.stride,this.offset)}",c={float32:[],float64:[],int8:[],int16:[],int32:[],uint8:[],uint16:[],uint32:[],array:[],generic:[]};t.exports=a},{"iota-array":36}],22:[function(e,t){"use strict";function r(e){for(var t,r,n=[],r=0;e.children.length>r;++r){var i=e.children[r];if("placeholder"!==i.type)if("keyword"===i.type){if("uniform"===i.token.data||"attribute"===i.token.data)continue;t=i.token.data}else if("decllist"===i.type)for(var o=0;i.children.length>o;++o){var a=i.children[o];"ident"===a.type&&n.push(a.token.data)}}return{type:t,vars:n}}function n(e){var t={},n={},s=a();return s.pipe(i()).pipe(o()).on("data",function(e){if("decl"===e.type&&"keyword"===e.token.type)if("uniform"===e.token.data)for(var i=r(e),o=0;i.vars.length>o;++o)t[i.vars[o]]=i.type;else if("attribute"===e.token.data)for(var i=r(e),o=0;i.vars.length>o;++o)n[i.vars[o]]=i.type}),s.write(e),{uniforms:t,attributes:n}}var i=e("glsl-tokenizer"),o=e("glsl-parser"),a=e("through");t.exports=n},{"glsl-tokenizer":37,through:38,"glsl-parser":39}],33:[function(e,t,r){"use strict";"use restrict";function n(e){var t=32;return e&=-e,e&&t--,65535&e&&(t-=16),16711935&e&&(t-=8),252645135&e&&(t-=4),858993459&e&&(t-=2),1431655765&e&&(t-=1),t}var i=32;r.INT_BITS=i,r.INT_MAX=2147483647,r.INT_MIN=-1<<i-1,r.sign=function(e){return(e>0)-(0>e)},r.abs=function(e){var t=e>>i-1;return(e^t)-t},r.min=function(e,t){return t^(e^t)&-(t>e)},r.max=function(e,t){return e^(e^t)&-(t>e)},r.isPow2=function(e){return!(e&e-1||!e)},r.log2=function(e){var t,r;return t=(e>65535)<<4,e>>>=t,r=(e>255)<<3,e>>>=r,t|=r,r=(e>15)<<2,e>>>=r,t|=r,r=(e>3)<<1,e>>>=r,t|=r,t|e>>1},r.log10=function(e){return e>=1e9?9:e>=1e8?8:e>=1e7?7:e>=1e6?6:e>=1e5?5:e>=1e4?4:e>=1e3?3:e>=100?2:e>=10?1:0},r.popCount=function(e){return e-=1431655765&e>>>1,e=(858993459&e)+(858993459&e>>>2),16843009*(252645135&e+(e>>>4))>>>24},r.countTrailingZeros=n,r.nextPow2=function(e){return e+=0===e,--e,e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,e|=e>>>16,e+1},r.prevPow2=function(e){return e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,e|=e>>>16,e-(e>>>1)},r.parity=function(e){return e^=e>>>16,e^=e>>>8,e^=e>>>4,e&=15,1&27030>>>e};var o=Array(256);(function(e){for(var t=0;256>t;++t){var r=t,n=t,i=7;for(r>>>=1;r;r>>>=1)n<<=1,n|=1&r,--i;e[t]=255&n<<i}})(o),r.reverse=function(e){return o[255&e]<<24|o[255&e>>>8]<<16|o[255&e>>>16]<<8|o[255&e>>>24]},r.interleave2=function(e,t){return e&=65535,e=16711935&(e|e<<8),e=252645135&(e|e<<4),e=858993459&(e|e<<2),e=1431655765&(e|e<<1),t&=65535,t=16711935&(t|t<<8),t=252645135&(t|t<<4),t=858993459&(t|t<<2),t=1431655765&(t|t<<1),e|t<<1},r.deinterleave2=function(e,t){return e=1431655765&e>>>t,e=858993459&(e|e>>>1),e=252645135&(e|e>>>2),e=16711935&(e|e>>>4),e=65535&(e|e>>>16),e<<16>>16},r.interleave3=function(e,t,r){return e&=1023,e=4278190335&(e|e<<16),e=251719695&(e|e<<8),e=3272356035&(e|e<<4),e=1227133513&(e|e<<2),t&=1023,t=4278190335&(t|t<<16),t=251719695&(t|t<<8),t=3272356035&(t|t<<4),t=1227133513&(t|t<<2),e|=t<<1,r&=1023,r=4278190335&(r|r<<16),r=251719695&(r|r<<8),r=3272356035&(r|r<<4),r=1227133513&(r|r<<2),e|r<<2},r.deinterleave3=function(e,t){return e=1227133513&e>>>t,e=3272356035&(e|e>>>2),e=251719695&(e|e>>>4),e=4278190335&(e|e>>>8),e=1023&(e|e>>>16),e<<22>>22},r.nextCombination=function(e){var t=e|e-1;return t+1|(~t&-~t)-1>>>n(e)+1}},{}],34:[function(e,t){"use strict";function r(e,t,n){var i=0|e[n];if(0>=i)return[];var o,a=Array(i);if(n===e.length-1)for(o=0;i>o;++o)a[o]=t;else for(o=0;i>o;++o)a[o]=r(e,t,n+1);return a}function n(e,t){var r,n;for(r=Array(e),n=0;e>n;++n)r[n]=t;return r}function i(e,t){switch(t===void 0&&(t=0),typeof e){case"number":if(e>0)return n(0|e,t);break;case"object":if("number"==typeof e.length)return r(e,t,0)}return[]}t.exports=i},{}],36:[function(e,t){"use strict";function r(e){for(var t=Array(e),r=0;e>r;++r)t[r]=r;return t}t.exports=r},{}],38:[function(e,t,r){(function(n){function i(e,t,r){function i(){for(;l.length&&!f.paused;){var e=l.shift();if(null===e)return f.emit("end");f.emit("data",e)}}function a(){f.writable=!1,t.call(f),!f.readable&&f.autoDestroy&&f.destroy()}e=e||function(e){this.queue(e)},t=t||function(){this.queue(null)};var s=!1,u=!1,l=[],c=!1,f=new o;return f.readable=f.writable=!0,f.paused=!1,f.autoDestroy=!(r&&r.autoDestroy===!1),f.write=function(t){return e.call(this,t),!f.paused},f.queue=f.push=function(e){return c?f:(null==e&&(c=!0),l.push(e),i(),f)},f.on("end",function(){f.readable=!1,!f.writable&&f.autoDestroy&&n.nextTick(function(){f.destroy()})}),f.end=function(e){return s?void 0:(s=!0,arguments.length&&f.write(e),a(),f)},f.destroy=function(){return u?void 0:(u=!0,s=!0,l.length=0,f.writable=f.readable=!1,f.emit("close"),f)},f.pause=function(){return f.paused?void 0:(f.paused=!0,f)},f.resume=function(){return f.paused&&(f.paused=!1,f.emit("resume")),i(),f.paused||f.emit("drain"),f},f}var o=e("stream");r=t.exports=i,i.through=i})(e("__browserify_process"))},{stream:40,__browserify_process:12}],35:[function(e,t){"use strict";function r(){this.argTypes=[],this.shimArgs=[],this.arrayArgs=[],this.scalarArgs=[],this.indexArgs=[],this.shapeArgs=[],this.funcName="",this.pre=null,this.body=null,this.post=null,this.debug=!1}function n(e){var t=new r;t.pre=e.pre,t.body=e.body,t.post=e.post;var n=e.args.slice(0);t.argTypes=n;for(var o=0;n.length>o;++o)switch(n[o]){case"array":if(t.arrayArgs.push(o),t.shimArgs.push("array"+o),t.pre.args.length>o&&t.pre.args[o].count>0)throw Error("cwise: pre() block may not reference array args");if(t.post.args.length>o&&t.post.args[o].count>0)throw Error("cwise: post() block may not reference array args");break;case"scalar":t.scalarArgs.push(o),t.shimArgs.push("scalar"+o);break;case"index":if(t.indexArgs.push(o),t.pre.args.length>o&&t.pre.args[o].count>0)throw Error("cwise: pre() block may not reference array index");if(t.body.args.length>o&&t.body.args[o].lvalue)throw Error("cwise: body() block may not write to array index");if(t.post.args.length>o&&t.post.args[o].count>0)throw Error("cwise: post() block may not reference array index");break;case"shape":if(t.shapeArgs.push(o),t.pre.args.length>o&&t.pre.args[o].lvalue)throw Error("cwise: pre() block may not write to array shape");if(t.body.args.length>o&&t.body.args[o].lvalue)throw Error("cwise: body() block may not write to array shape");if(t.post.args.length>o&&t.post.args[o].lvalue)throw Error("cwise: post() block may not write to array shape");break;default:throw Error("cwise: Unknown argument type "+n[o])}if(0>=t.arrayArgs.length)throw Error("cwise: No array arguments specified");if(t.pre.args.length>n.length)throw Error("cwise: Too many arguments in pre() block");if(t.body.args.length>n.length)throw Error("cwise: Too many arguments in body() block");if(t.post.args.length>n.length)throw Error("cwise: Too many arguments in post() block");return t.debug=!!e.printCode||!!e.debug,t.funcName=e.funcName||"cwise",t.blockSize=e.blockSize||64,i(t)}var i=e("./lib/thunk.js");t.exports=n},{"./lib/thunk.js":41}],40:[function(e,t){function r(){n.EventEmitter.call(this)}var n=e("events"),i=e("util");i.inherits(r,n.EventEmitter),t.exports=r,r.Stream=r,r.prototype.pipe=function(e,t){function r(t){e.writable&&!1===e.write(t)&&u.pause&&u.pause()}function n(){u.readable&&u.resume&&u.resume()}function i(){l||(l=!0,e._pipeCount--,s(),e._pipeCount>0||e.end())}function o(){l||(l=!0,e._pipeCount--,s(),e._pipeCount>0||e.destroy())}function a(e){if(s(),0===this.listeners("error").length)throw e}function s(){u.removeListener("data",r),e.removeListener("drain",n),u.removeListener("end",i),u.removeListener("close",o),u.removeListener("error",a),e.removeListener("error",a),u.removeListener("end",s),u.removeListener("close",s),e.removeListener("end",s),e.removeListener("close",s)}var u=this;u.on("data",r),e.on("drain",n),e._isStdio||t&&t.end===!1||(e._pipeCount=e._pipeCount||0,e._pipeCount++,u.on("end",i),u.on("close",o));var l=!1;return u.on("error",a),e.on("error",a),u.on("end",s),u.on("close",s),e.on("end",s),e.on("close",s),e.emit("pipe",u),e}},{events:13,util:17}],39:[function(e,t){t.exports=e("./lib/index")},{"./lib/index":42}],43:[function(e,t){t.exports=["precision","highp","mediump","lowp","attribute","const","uniform","varying","break","continue","do","for","while","if","else","in","out","inout","float","int","void","bool","true","false","discard","return","mat2","mat3","mat4","vec2","vec3","vec4","ivec2","ivec3","ivec4","bvec2","bvec3","bvec4","sampler1D","sampler2D","sampler3D","samplerCube","sampler1DShadow","sampler2DShadow","struct","asm","class","union","enum","typedef","template","this","packed","goto","switch","default","inline","noinline","volatile","public","static","extern","external","interface","long","short","double","half","fixed","unsigned","input","output","hvec2","hvec3","hvec4","dvec2","dvec3","dvec4","fvec2","fvec3","fvec4","sampler2DRect","sampler3DRect","sampler2DRectShadow","sizeof","cast","namespace","using"]},{}],44:[function(e,t){t.exports=["gl_Position","gl_PointSize","gl_ClipVertex","gl_FragCoord","gl_FrontFacing","gl_FragColor","gl_FragData","gl_FragDepth","gl_Color","gl_SecondaryColor","gl_Normal","gl_Vertex","gl_MultiTexCoord0","gl_MultiTexCoord1","gl_MultiTexCoord2","gl_MultiTexCoord3","gl_MultiTexCoord4","gl_MultiTexCoord5","gl_MultiTexCoord6","gl_MultiTexCoord7","gl_FogCoord","gl_MaxLights","gl_MaxClipPlanes","gl_MaxTextureUnits","gl_MaxTextureCoords","gl_MaxVertexAttribs","gl_MaxVertexUniformComponents","gl_MaxVaryingFloats","gl_MaxVertexTextureImageUnits","gl_MaxCombinedTextureImageUnits","gl_MaxTextureImageUnits","gl_MaxFragmentUniformComponents","gl_MaxDrawBuffers","gl_ModelViewMatrix","gl_ProjectionMatrix","gl_ModelViewProjectionMatrix","gl_TextureMatrix","gl_NormalMatrix","gl_ModelViewMatrixInverse","gl_ProjectionMatrixInverse","gl_ModelViewProjectionMatrixInverse","gl_TextureMatrixInverse","gl_ModelViewMatrixTranspose","gl_ProjectionMatrixTranspose","gl_ModelViewProjectionMatrixTranspose","gl_TextureMatrixTranspose","gl_ModelViewMatrixInverseTranspose","gl_ProjectionMatrixInverseTranspose","gl_ModelViewProjectionMatrixInverseTranspose","gl_TextureMatrixInverseTranspose","gl_NormalScale","gl_DepthRangeParameters","gl_DepthRange","gl_ClipPlane","gl_PointParameters","gl_Point","gl_MaterialParameters","gl_FrontMaterial","gl_BackMaterial","gl_LightSourceParameters","gl_LightSource","gl_LightModelParameters","gl_LightModel","gl_LightModelProducts","gl_FrontLightModelProduct","gl_BackLightModelProduct","gl_LightProducts","gl_FrontLightProduct","gl_BackLightProduct","gl_FogParameters","gl_Fog","gl_TextureEnvColor","gl_EyePlaneS","gl_EyePlaneT","gl_EyePlaneR","gl_EyePlaneQ","gl_ObjectPlaneS","gl_ObjectPlaneT","gl_ObjectPlaneR","gl_ObjectPlaneQ","gl_FrontColor","gl_BackColor","gl_FrontSecondaryColor","gl_BackSecondaryColor","gl_TexCoord","gl_FogFragCoord","gl_Color","gl_SecondaryColor","gl_TexCoord","gl_FogFragCoord","gl_PointCoord","radians","degrees","sin","cos","tan","asin","acos","atan","pow","exp","log","exp2","log2","sqrt","inversesqrt","abs","sign","floor","ceil","fract","mod","min","max","clamp","mix","step","smoothstep","length","distance","dot","cross","normalize","faceforward","reflect","refract","matrixCompMult","lessThan","lessThanEqual","greaterThan","greaterThanEqual","equal","notEqual","any","all","not","texture2D","texture2DProj","texture2DLod","texture2DProjLod","textureCube","textureCubeLod"]},{}],45:[function(e,t){t.exports=["<<=",">>=","++","--","<<",">>","<=",">=","==","!=","&&","||","+=","-=","*=","/=","%=","&=","^=","|=","(",")","[","]",".","!","~","*","/","%","+","-","<",">","&","^","|","?",":","=",",",";","{","}"]
},{}],41:[function(e,t){"use strict";function r(e){var t=["'use strict'","var CACHED={}"],r=[],i=e.funcName+"_cwise_thunk";t.push(["return function ",i,"(",e.shimArgs.join(","),"){"].join(""));for(var o=[],a=[],s=[["array",e.arrayArgs[0],".shape"].join("")],u=0;e.arrayArgs.length>u;++u){var l=e.arrayArgs[u];r.push(["t",l,"=array",l,".dtype,","r",l,"=array",l,".order"].join("")),o.push("t"+l),o.push("r"+l),a.push("t"+l),a.push("r"+l+".join()"),s.push("array"+l+".data"),s.push("array"+l+".stride"),s.push("array"+l+".offset|0")}for(var u=0;e.scalarArgs.length>u;++u)s.push("scalar"+e.scalarArgs[u]);r.push(["type=[",a.join(","),"].join()"].join("")),r.push("proc=CACHED[type]"),t.push("var "+r.join(",")),t.push(["if(!proc){","CACHED[type]=proc=compile([",o.join(","),"])}","return proc(",s.join(","),")}"].join("")),e.debug&&console.log("Generated thunk:",t.join("\n"));var c=Function("compile",t.join("\n"));return c(n.bind(void 0,e))}var n=e("./compile.js");t.exports=r},{"./compile.js":46}],37:[function(e,t){function r(){function e(e){e.length&&I.queue({type:w[R],data:e,position:U,line:z})}function t(e){for(N=0,X+=""+e,O=X.length;P=X[N],O>N;)switch(R){case l:N=E();break;case c:N=j();break;case f:N=k();break;case h:N=M();break;case p:N=C();break;case b:N=L();break;case d:N=S();break;case u:N=T();break;case y:N=A();break;case s:N=x()}q+=N,X=X.slice(N)}function r(){D.length&&e(D.join("")),R=_,e("(eof)"),I.queue(null)}function x(){return D=D.length?[]:D,"/"===V&&"*"===P?(U=q+N-1,R=l,V=P,N+1):"/"===V&&"/"===P?(U=q+N-1,R=c,V=P,N+1):"#"===P?(R=f,U=q+N,N):/\s/.test(P)?(R=y,U=q+N,N):(B=/\d/.test(P),Y=/[^\w_]/.test(P),U=q+N,R=B?p:Y?h:u,N)}function A(){return"\n"===P&&++z,/[^\s]/g.test(P)?(e(D.join("")),R=s,N):(D.push(P),V=P,N+1)}function k(){return"\n"===P&&++z,"\n"===P&&"\\"!==V?(e(D.join("")),R=s,N):(D.push(P),V=P,N+1)}function j(){return k()}function E(){return"/"===P&&"*"===V?(D.push(P),e(D.join("")),R=s,N+1):("\n"===P&&++z,D.push(P),V=P,N+1)}function M(){if("."===V&&/\d/.test(P))return R=d,N;if("/"===V&&"*"===P)return R=l,N;if("/"===V&&"/"===P)return R=c,N;if("."===P&&D.length){for(;F(D););return R=d,N}if(";"===P){if(D.length)for(;F(D););return e(P),R=s,N+1}var t=2===D.length&&"="!==P;if(/[\w_\d\s]/.test(P)||t){for(;F(D););return R=s,N}return D.push(P),V=P,N+1}function F(t){for(var r,n=0;;){r=o.indexOf(t.slice(0,t.length+n).join(""));{if(-1!==r)return e(o[r]),U+=o[r].length,D=D.slice(o[r].length),D.length;n-=1}}}function L(){return/[^a-fA-F0-9]/.test(P)?(e(D.join("")),R=s,N):(D.push(P),V=P,N+1)}function C(){return"."===P?(D.push(P),R=d,V=P,N+1):/[eE]/.test(P)?(D.push(P),R=d,V=P,N+1):"x"===P&&1===D.length&&"0"===D[0]?(R=b,D.push(P),V=P,N+1):/[^\d]/.test(P)?(e(D.join("")),R=s,N):(D.push(P),V=P,N+1)}function S(){return"f"===P&&(D.push(P),V=P,N+=1),/[eE]/.test(P)?(D.push(P),V=P,N+1):/[^\d]/.test(P)?(e(D.join("")),R=s,N):(D.push(P),V=P,N+1)}function T(){if(/[^\d\w_]/.test(P)){var t=D.join("");return R=i.indexOf(t)>-1?m:a.indexOf(t)>-1?v:g,e(D.join("")),R=s,N}return D.push(P),V=P,N+1}var P,V,O,I=n(t,r),N=0,q=0,R=s,D=[],z=1,U=0,B=!1,Y=!1,X="";return I}t.exports=r;var n=e("through"),i=e("./lib/literals"),o=e("./lib/operators"),a=e("./lib/builtins"),s=999,u=9999,l=0,c=1,f=2,h=3,p=4,d=5,g=6,v=7,m=8,y=9,_=10,b=11,w=["block-comment","line-comment","preprocessor","operator","integer","float","ident","builtin","keyword","whitespace","eof","integer"]},{"./lib/literals":43,"./lib/operators":45,"./lib/builtins":44,through:38}],47:[function(e,t){function r(){return this}function n(e,t){var r=m[e];return t=t||0,r?t>r.lbp&&(r.lbp=t):(r=Object.create(v),r.id=e,r.lbp=t,m[e]=r),r}function i(e){var t,r=p;for(c(),t=r.nud();p.lbp>e;)r=p,c(),t=r.led(t);return t}function o(e,t,r){var o=n(e,t);o.led=r||function(e){return this.children=[e,i(t)],this.type="binary",this}}function a(e,t,r){var o=n(e,t);return o.led=r||function(e){return this.children=[e,i(t-1)],this.type="binary",this},o}function s(e,t){var r=n(e);return r.nud=t||function(){return this.children=[i(70)],this.type="unary",this},r}function u(e){var t=n(e,150);t.led=function(e){return this.children=[e],this.type="suffix",this}}function l(e){return a(e,10,function(e){return this.children=[e,i(9)],this.assignment=!0,this.type="assign",this})}function c(e){var t,n,i,o;if(e&&p.data!==e)return h.unexpected("expected `"+e+"`, got `"+p.data+"`");if(g>=d.length)return p=m["(end)"],void 0;if(t=d[g++],n=t.data,i=t.type,"ident"===i)o=h.scope.find(n)||h.create_node(),i=o.type;else if("builtin"===i)o=m["(builtin)"];else if("keyword"===i)o=m["(keyword)"];else if("operator"===i){if(o=m[n],!o)return h.unexpected("unknown operator `"+n+"`")}else{if("float"!==i&&"integer"!==i)return h.unexpected("unexpected token.");i="literal",o=m["(literal)"]}return o&&(o.nud||(o.nud=r),o.children||(o.children=[])),o=Object.create(o),o.token=t,o.type=i,o.data||(o.data=n),p=o}function f(e){return function(){return h.unexpected(e)}}var h,p,d,g,v={nud:function(){return this.children&&this.children.length?this:f("unexpected")()},led:f("missing operator")},m={};n("(ident)").nud=r,n("(keyword)").nud=r,n("(builtin)").nud=r,n("(literal)").nud=r,n("(end)"),n(":"),n(";"),n(","),n(")"),n("]"),n("}"),a("&&",30),a("||",30),o("|",43),o("^",44),o("&",45),o("==",46),o("!=",46),o("<",47),o("<=",47),o(">",47),o(">=",47),o(">>",48),o("<<",48),o("+",50),o("-",50),o("*",60),o("/",60),o("%",60),o("?",20,function(e){return this.children=[e,i(0),(c(":"),i(0))],this.type="ternary",this}),o(".",80,function(e){return p.type="literal",h.fake(p),this.children=[e,p],c(),this}),o("[",80,function(e){return this.children=[e,i(0)],this.type="binary",c("]"),this}),o("(",80,function(e){if(this.children=[e],this.type="call",")"!==p.data)for(;;){if(this.children.push(i(0)),","!==p.data)break;c(",")}return c(")"),this}),s("-"),s("+"),s("!"),s("~"),s("defined"),s("(",function(){return this.type="group",this.children=[i(0)],c(")"),this}),s("++"),s("--"),u("++"),u("--"),l("="),l("+="),l("-="),l("*="),l("/="),l("%="),l("&="),l("|="),l("^="),l(">>="),l("<<="),t.exports=function(e,t){function r(e){h.unshift(e,!1);for(var t=0,n=e.children.length;n>t;++t)r(e.children[t]);h.shift()}h=e,d=t,g=0;var n;if(d.length){if(c(),n=i(0),n.parent=h[0],r(n),d.length>g)throw Error("did not use all tokens");n.parent.children=[n]}}},{}],48:[function(e,t){function r(e){return this.constructor!==r?new r(e):(this.state=e,this.scopes=[],this.current=null,void 0)}t.exports=r;var n=r,i=n.prototype;i.enter=function(e){this.scopes.push(this.current=this.state[0].scope=e||{})},i.exit=function(){this.scopes.pop(),this.current=this.scopes[this.scopes.length-1]},i.define=function(e){this.current[e]=this.state[0]},i.find=function(e){for(var t=this.scopes.length-1;t>-1;--t)if(this.scopes[t].hasOwnProperty(e))return this.scopes[t][e];return null}},{}],42:[function(e,t){function r(){function e(e){if("whitespace"===e.type||"line-comment"===e.type||"block-comment"===e.type)return Kt.push(e),void 0;for(Wt.push(e),St=St||Wt[0],St&&Kt.length&&(St.preceding=St.preceding||[],St.preceding=St.preceding.concat(Kt),Kt=[]);r();)switch(Gt[0].mode){case d:K();break;case g:R();break;case _:J();break;case b:Q();break;case k:rt();break;case v:bt(!0,!0);break;case j:wt();break;case p:tt();break;case F:et();break;case L:$();break;case m:Ft();break;case y:Lt();break;case w:At();break;case x:Et();break;case V:Mt();break;case C:jt();break;case A:kt();break;case I:xt()}}function t(t){return arguments.length&&e(t),Gt.length>1?(lt("unexpected EOF"),void 0):(Ht.emit("end"),void 0)}function r(){return Jt||!Gt.length?Jt:(St=Wt[0])&&!Ht.paused}function h(e){Gt.unshift(e),Gt.shift()}function E(e,t){e.parent=Gt[0];var r=[].unshift.call(this,e);if(t=void 0===t?!0:t,f){for(var n="",i=0,o=this.length-1;o>i;++i)n+=" |";console.log(n,"\\"+e.type,e.token.data)}return t&&Tt!==e&&Tt.children.push(e),Tt=e,r}function M(){var e=[].shift.call(this),t=Zt[this.length],r=!1;if(f){for(var n="",i=0,o=this.length;o>i;++i)n+=" |";console.log(n,"/"+e.type)}return Zt.length?"function"==typeof Zt[0]?r=Zt[0](e):void 0!==t&&(r=t.test?t.test(e.type):t===e.type):r=!0,r&&Ht.emit("data",e),Tt=e.parent,e}function R(){function e(){if(St.data===Gt[0].expecting)return Gt.scope.exit(),Gt.shift();switch(St.type){case"preprocessor":return Gt.fake(it()),Wt.shift(),void 0;default:return Gt.unshift(Vt()),void 0}}return ht(function(){return Gt.scope.enter(),c},e)()}function K(){if(Gt[0].brace)return"}"!==St.data?lt("expected `}`, got "+St.data):(Gt[0].brace=!1,Wt.shift(),Gt.shift());switch(St.type){case"eof":return Gt.shift();case"keyword":switch(St.data){case"for":return Gt.unshift(Dt());case"if":return Gt.unshift(zt());case"while":return Gt.unshift(Ut());case"do":return Gt.unshift(Yt());case"break":return Gt.fake(n(S,St)),Wt.shift();case"continue":return Gt.fake(n(T,St)),Wt.shift();case"discard":return Gt.fake(n(P,St)),Wt.shift();case"return":return Gt.unshift(Bt());case"precision":return Gt.unshift(It())}return Gt.unshift(ot(Y));case"ident":var e;if(e=Gt.scope.find(St.data))return"struct"===e.parent.type?Gt.unshift(ot(Y)):Gt.unshift(st(";"));case"operator":if("{"===St.data){Gt[0].brace=!0;var t=Pt();return t.expecting="}",Wt.shift(),Gt.unshift(t)}if(";"===St.data)return Wt.shift(),Gt.shift();default:return Gt.unshift(st(";"))}}function J(){function e(){return"invariant"===St.data?d.flags&D?(Gt.unshift(ut()),c):lt("`invariant` is not allowed here"):(Gt.fake(n(O,{data:"",position:St.position})),c)}function t(){return i(St)?d.flags&z?(Gt.unshift(ut()),c):lt("storage is not allowed here"):(Gt.fake(n(O,{data:"",position:St.position})),c)}function r(){return o(St)?d.flags&U?lt("parameter is not allowed here"):(Gt.unshift(ut()),c):(Gt.fake(n(O,{data:"",position:St.position})),c)}function s(){return a(St)?(Gt.unshift(ut()),c):(Gt.fake(n(O,{data:"",position:St.position})),c)}function u(){if("struct"===St.data)return d.flags&B?(Gt.unshift(at()),c):lt("cannot nest structs");if("keyword"===St.type)return Gt.unshift(ut()),c;var e=Gt.scope.find(St.data);return e?(Gt.fake(Object.create(e)),Wt.shift(),c):lt("expected user defined type, struct or keyword, got "+St.data)}function l(){return","!==St.data||d.flags&q?"["===St.data?(Gt.unshift(Xt()),void 0):")"===St.data?Gt.shift():";"===St.data?d.stage+3:"ident"!==St.type?lt("expected identifier, got "+St.data):(d.collected_name=Wt.shift(),c):Gt.shift()}function f(){return"("===St.data?(Wt.unshift(d.collected_name),delete d.collected_name,Gt.unshift(qt()),d.stage+2):c}function h(){return Wt.unshift(d.collected_name),delete d.collected_name,Gt.unshift(Ot()),c}function p(){return Gt.shift()}var d=Gt[0];return ht(e,t,r,s,u,l,f,h,p)()}function Q(){if("ident"===St.type){var e=St.data;return Gt.unshift(Nt()),Gt.scope.define(e),void 0}if("operator"===St.type){if(","===St.data)return Gt[1].flags&q?Wt.shift():Gt.shift();if("="===St.data)return Gt[1].flags&N?(Wt.shift(),Gt.unshift(st(",",";")),void 0):lt("`=` is not allowed here.");if("["===St.data)return Gt.unshift(Xt()),void 0}return Gt.shift()}function $(){return"keyword"===St.type?(Gt[0].type="keyword",Gt[0].mode=F,void 0):"ident"===St.type?(Gt[0].type="ident",Gt[0].mode=p,void 0):lt("expected keyword or user-defined name, got "+St.data)}function et(){return"keyword"!==St.type?lt("expected keyword, got "+St.data):(Gt.shift(),Wt.shift())}function tt(){return"ident"!==St.type?lt("expected user-defined name, got "+St.data):(Gt[0].data=St.data,Gt.shift(),Wt.shift())}function rt(){function e(e){return u(Gt,e),Gt.shift()}var t=Gt[0].expecting;if(Gt[0].tokens=Gt[0].tokens||[],void 0===Gt[0].parenlevel&&(Gt[0].parenlevel=0,Gt[0].bracelevel=0),1>Gt[0].parenlevel&&t.indexOf(St.data)>-1)return e(Gt[0].tokens);switch("("===St.data?++Gt[0].parenlevel:")"===St.data&&--Gt[0].parenlevel,St.data){case"{":++Gt[0].bracelevel;break;case"}":--Gt[0].bracelevel;break;case"(":++Gt[0].parenlevel;break;case")":--Gt[0].parenlevel}return 0>Gt[0].parenlevel?lt("unexpected `)`"):0>Gt[0].bracelevel?lt("unexpected `}`"):(Gt[0].tokens.push(Wt.shift()),void 0)}function nt(e){return function(){return n(e,St)}}function it(){return n(W[St.type],St,Tt)}function ot(e){var t=n(_,St,Tt);return t.flags=e,t}function at(e,t){var r=n(v,St,Tt);return r.allow_assign=void 0===e?!0:e,r.allow_comma=void 0===t?!0:t,r}function st(){var e=n(k,St,Tt);return e.expecting=[].slice.call(arguments),e}function ut(e){var t=St;return e&&(t={type:"(implied)",data:"(default)",position:t.position}),n(F,t,Tt)}function lt(e){Jt=!0,Ht.emit("error",Error((e||"unexpected "+Gt)+" at line "+Gt[0].token.line))}function ct(e,t){return ft(e,St.type)&&ft(t,St.data)}function ft(e,t){switch(typeof e){case"string":return t!==e&&lt("expected `"+e+"`, got "+t+"\n"+St.data),!Jt;case"object":return e&&-1===e.indexOf(t)&&lt("expected one of `"+e.join("`, `")+"`, got "+t),!Jt}return!0}function ht(){var e,t,r=[].slice.call(arguments);return function(){var n=Gt[0];return n.stage||(n.stage=0),(e=r[n.stage])?(t=e(),t===c?++n.stage:(void 0!==t&&(n.stage=t),void 0)):lt("parser in undefined state!")}}function pt(e,t){return t=t||"operator",function(){if(ct(t,e)){var r=Wt.shift(),n=Gt[0].children,i=n[n.length-1];return i&&i.token&&r.preceding&&(i.token.succeeding=i.token.succeeding||[],i.token.succeeding=i.token.succeeding.concat(r.preceding)),c}}}function dt(e){return function(){return Gt.unshift(st(e)),c}}function gt(e){return e?function(){var e=St.data;return ct("ident")&&(Gt.unshift(Nt()),Gt.scope.define(e),c)}:function(){if(ct("ident")){var e=Object.create(Gt.scope.find(St.data));return e.token=St,Wt.shift(),c}}}function vt(){return function(){var e=Pt();return e.expecting="}",Gt.unshift(e),c}}function mt(e){return function(){var t=Gt[0].stage;return"{"!==St.data?(Gt.unshift(Vt()),t+e):(Wt.shift(),c)}}function yt(){return function(){return Gt.shift(),Gt.shift()}}function _t(){bt=ht(pt("struct","keyword"),function(){return"{"===St.data?(Gt.fake(n(p,{data:"",position:St.position,type:"ident"})),c):gt(!0)()},function(){return Gt.scope.enter(),c},pt("{"),function(){return"}"===St.data?(Gt.scope.exit(),Wt.shift(),Gt.shift()):";"===St.data?(Wt.shift(),void 0):(Gt.unshift(ot(H)),void 0)}),wt=ht(function(){return Wt.shift(),c},function(){return ct("keyword",["lowp","mediump","highp"])&&(Gt.unshift(ut()),c)},function(){return Gt.unshift(ut()),c},function(){return Gt.shift()}),xt=ht(pt("["),dt("]"),pt("]"),function(){return Gt.shift()}),At=ht(pt("for","keyword"),pt("("),function(){var e;if("ident"===St.type){if((e=Gt.scope.find(St.data))||(e=Gt.create_node()),"struct"===e.parent.type)return Gt.unshift(ot(Y)),c}else if("builtin"===St.type||"keyword"===St.type)return Gt.unshift(ot(Y)),c;return dt(";")()},pt(";"),dt(";"),pt(";"),dt(")"),pt(")"),mt(3),vt(),pt("}"),yt()),kt=ht(pt("if","keyword"),pt("("),dt(")"),pt(")"),mt(3),vt(),pt("}"),function(){return"else"===St.data?(Wt.shift(),Gt.unshift(Vt()),c):yt()()},yt()),jt=ht(pt("return","keyword"),function(){return";"===St.data?c:(Gt.unshift(st(";")),c)},function(){Wt.shift(),yt()()}),Et=ht(pt("while","keyword"),pt("("),dt(")"),pt(")"),mt(3),vt(),pt("}"),yt()),Mt=ht(pt("do","keyword"),mt(3),vt(),pt("}"),pt("while","keyword"),pt("("),dt(")"),pt(")"),yt()),Ft=ht(function(){for(var e=1,t=Gt.length;t>e;++e)if(Gt[e].mode===m)return lt("function definition is not allowed within another function");return c},function(){if(ct("ident")){var e=St.data,t=Gt.scope.find(e);return Gt.unshift(Nt()),Gt.scope.define(e),Gt.scope.enter(t?t.scope:null),c}},pt("("),function(){return Gt.unshift(Rt()),c},pt(")"),function(){return";"===St.data?(Gt.scope.exit(),Gt.shift(),Gt.shift()):c},pt("{"),vt(),pt("}"),function(){return Gt.scope.exit(),c},function(){return Gt.shift(),Gt.shift(),Gt.shift()}),Lt=ht(function(){return"void"===St.data?(Gt.fake(ut()),Wt.shift(),c):")"===St.data?(Gt.shift(),void 0):"struct"===St.data?(Gt.unshift(at(Z,G)),c):(Gt.unshift(ot(X)),c)},function(){return","===St.data?(Wt.shift(),0):")"===St.data?(Gt.shift(),void 0):(lt("expected one of `,` or `)`, got "+St.data),void 0)})}var bt,wt,xt,At,kt,jt,Et,Mt,Ft,Lt,Ct,St,Tt,Pt=nt(g),Vt=nt(d),Ot=nt(b),It=nt(j),Nt=nt(p),qt=(nt(L),nt(m)),Rt=nt(y),Dt=nt(w),zt=nt(A),Ut=nt(x),Bt=nt(C),Yt=nt(V),Xt=nt(I),Ht=s(e,t),Zt=arguments.length?[].slice.call(arguments):[],Gt=[],Wt=[],Kt=[],Jt=!1;return Gt.shift=M,Gt.unshift=E,Gt.fake=h,Gt.unexpected=lt,Gt.scope=new l(Gt),Gt.create_node=function(){var e=n(p,St);return e.parent=Ht.program,e},_t(),Tt=Pt(),Tt.expecting="(eof)",Tt.mode=g,Tt.token={type:"(program)",data:"(program)"},Ct=Tt,Ht.program=Ct,Ht.scope=function(e){return 1===arguments.length&&(Gt.scope=e),Gt.scope},Gt.unshift(Tt),Ht}function n(e,t){return{mode:e,token:t,children:[],type:K[e],id:(4294967295*Math.random()).toString(16)}}function i(e){return"const"===e.data||"attribute"===e.data||"uniform"===e.data||"varying"===e.data}function o(e){return"in"===e.data||"inout"===e.data||"out"===e.data}function a(e){return"highp"===e.data||"mediump"===e.data||"lowp"===e.data}t.exports=r;var s=e("through"),u=e("./expr"),l=e("./scope"),c={},f=!1,h=0,p=h++,d=h++,g=h++,v=h++,m=h++,y=h++,_=h++,b=h++,w=h++,x=h++,A=h++,k=h++,j=h++,E=h++,M=h++,F=h++,L=h++,C=h++,S=h++,T=h++,P=h++,V=h++,O=h++,I=h++,N=1,q=2,R=4,D=8,z=16,U=32,B=64,Y=255,X=Y&~(N|q|U|D|R),H=Y&~(N|D|z|B),Z=!1,G=!1,W={"block-comment":E,"line-comment":E,preprocessor:M},K=h=["ident","stmt","stmtlist","struct","function","functionargs","decl","decllist","forloop","whileloop","if","expr","precision","comment","preprocessor","keyword","keyword_or_ident","return","break","continue","discard","do-while","placeholder","quantifier"]},{"./expr":47,"./scope":48,through:49}],49:[function(e,t,r){(function(n){function i(e,t){function r(){for(;l.length&&!u.paused;){var e=l.shift();if(null===e)return u.emit("end");u.emit("data",e)}}function i(){u.writable=!1,t.call(u),u.readable||u.destroy()}e=e||function(e){this.emit("data",e)},t=t||function(){this.emit("end")};var a=!1,s=!1,u=new o,l=[];return u.buffer=l,u.readable=u.writable=!0,u.paused=!1,u.write=function(t){return e.call(this,t),!u.paused},u.queue=function(e){l.push(e),r()},u.on("end",function(){u.readable=!1,u.writable||n.nextTick(function(){u.destroy()})}),u.end=function(e){a||(a=!0,arguments.length&&u.write(e),i())},u.destroy=function(){s||(s=!0,a=!0,l.length=0,u.writable=u.readable=!1,u.emit("close"))},u.pause=function(){u.paused||(u.paused=!0,u.emit("pause"))},u.resume=function(){u.paused&&(u.paused=!1),r(),u.paused||u.emit("drain")},u}var o=e("stream");r=t.exports=i,i.through=i})(e("__browserify_process"))},{stream:40,__browserify_process:12}],46:[function(e,t){"use strict";function r(e,t,r){var n,i,o=e.length,a=t.arrayArgs.length,s=t.indexArgs.length>0,u=[],l=[],c=0,f=0;for(n=0;o>n;++n)l.push(["i",n,"=0"].join(""));for(i=0;a>i;++i)for(n=0;o>n;++n)f=c,c=e[n],0===n?l.push(["d",i,"s",n,"=t",i,"[",c,"]"].join("")):l.push(["d",i,"s",n,"=(t",i,"[",c,"]-s",f,"*t",i,"[",f,"])"].join(""));for(u.push("var "+l.join(",")),n=o-1;n>=0;--n)c=e[n],u.push(["for(i",n,"=0;i",n,"<s",c,";++i",n,"){"].join(""));for(u.push(r),n=0;o>n;++n){for(f=c,c=e[n],i=0;a>i;++i)u.push(["p",i,"+=d",i,"s",n].join(""));s&&(n>0&&u.push(["index[",f,"]-=s",f].join("")),u.push(["++index[",c,"]"].join(""))),u.push("}")}return u.join("\n")}function n(e,t,n,i){for(var o=t.length,a=n.arrayArgs.length,s=n.blockSize,u=n.indexArgs.length>0,l=[],c=0;a>c;++c)l.push(["var offset",c,"=p",c].join(""));for(var c=e;o>c;++c)l.push(["for(var j"+c+"=SS[",t[c],"]|0;j",c,">0;){"].join("")),l.push(["if(j",c,"<",s,"){"].join("")),l.push(["s",t[c],"=j",c].join("")),l.push(["j",c,"=0"].join("")),l.push(["}else{s",t[c],"=",s].join("")),l.push(["j",c,"-=",s,"}"].join("")),u&&l.push(["index[",t[c],"]=j",c].join(""));for(var c=0;a>c;++c){for(var f=["offset"+c],h=e;o>h;++h)f.push(["j",h,"*t",c,"[",t[h],"]"].join(""));l.push(["p",c,"=(",f.join("+"),")"].join(""))}l.push(r(t,n,i));for(var c=e;o>c;++c)l.push("}");return l.join("\n")}function i(e){for(var t=0,r=e[0].length;r>t;){for(var n=1;e.length>n;++n)if(e[n][t]!==e[0][t])return t;++t}return t}function o(e,t,r){for(var n=e.body,i=[],o=[],a=0;e.args.length>a;++a){var s=e.args[a];if(!(0>=s.count)){var u=RegExp(s.name,"g");switch(t.argTypes[a]){case"array":var l=t.arrayArgs.indexOf(a);1===s.count?"generic"===r[l]?s.lvalue?(i.push(["var l",l,"=a",l,".get(p",l,")"].join("")),n=n.replace(u,"l"+l),o.push(["a",l,".set(p",l,",l",l,")"].join(""))):n=n.replace(u,["a",l,".get(p",l,")"].join("")):n=n.replace(u,["a",l,"[p",l,"]"].join("")):"generic"===r[l]?(i.push(["var l",l,"=a",l,".get(p",l,")"].join("")),n=n.replace(u,"l"+l),s.lvalue&&o.push(["a",l,".set(p",l,",l",l,")"].join(""))):(i.push(["var l",l,"=a",l,"[p",l,"]"].join("")),n=n.replace(u,"l"+l),s.lvalue&&o.push(["a",l,"[p",l,"]=l",l].join("")));break;case"scalar":n=n.replace(u,"Y"+t.scalarArgs.indexOf(a));break;case"index":n=n.replace(u,"index");break;case"shape":n=n.replace(u,"shape")}}}return[i.join("\n"),n,o.join("\n")].join("\n").trim()}function a(e){for(var t=Array(e.length),r=!0,n=0;e.length>n;++n){var i=e[n],o=i.match(/\d+/);o=o?o[0]:"",t[n]=0===i.charAt(0)?"u"+i.charAt(1)+o:i.charAt(0)+o,n>0&&(r=r&&t[n]===t[n-1])}return r?t[0]:t.join("")}function s(e,t){for(var s=0|t[1].length,l=Array(e.arrayArgs.length),c=Array(e.arrayArgs.length),f=["SS"],h=["'use strict'"],p=[],d=0;s>d;++d)p.push(["s",d,"=SS[",d,"]"].join(""));for(var g=0;e.arrayArgs.length>g;++g)f.push("a"+g),f.push("t"+g),f.push("p"+g),c[g]=t[2*g],l[g]=t[2*g+1];for(var g=0;e.scalarArgs.length>g;++g)f.push("Y"+g);if(e.shapeArgs.length>0&&p.push("shape=SS.slice(0)"),e.indexArgs.length>0){for(var v=Array(s),g=0;s>g;++g)v[g]="0";p.push(["index=[",v.join(","),"]"].join(""))}var m=u([].concat(e.pre.thisVars).concat(e.body.thisVars).concat(e.post.thisVars));p=p.concat(m),h.push("var "+p.join(","));for(var g=0;e.arrayArgs.length>g;++g)h.push("p"+g+"|=0");e.pre.body.length>3&&h.push(o(e.pre,e,c));var y=o(e.body,e,c),_=i(l);s>_?h.push(n(_,l[0],e,y)):h.push(r(l[0],e,y)),e.post.body.length>3&&h.push(o(e.post,e,c)),e.debug&&console.log("Generated cwise routine for ",t,":\n\n",h.join("\n"));var b=[e.funcName||"unnamed","_cwise_loop_",l[0].join("s"),"m",_,a(c)].join(""),w=Function(["function ",b,"(",f.join(","),"){",h.join("\n"),"} return ",b].join(""));return w()}var u=e("uniq");t.exports=s},{uniq:50}],50:[function(e,t){"use strict";function r(e,t){for(var r=1,n=e.length,i=e[0],o=e[0],a=1;n>a;++a)if(o=i,i=e[a],t(i,o)){if(a===r){r++;continue}e[r++]=i}return e.length=r,e}function n(e){for(var t=1,r=e.length,n=e[0],i=e[0],o=1;r>o;++o,i=n)if(i=n,n=e[o],n!==i){if(o===t){t++;continue}e[t++]=n}return e.length=t,e}function i(e,t,i){return 0===e.length?[]:t?(i||e.sort(t),r(e,t)):(i||e.sort(),n(e))}t.exports=i},{}]},{},[]);var shell=require("mesh-viewer")(),mesh;shell.on("viewer-init",function(){mesh=shell.createMesh(require("bunny"))}),shell.on("gl-render",function(){mesh.draw()});
<style type='text/css'>html, body { margin: 0; padding: 0; border: 0; }
body, html { height: 100%; width: 100%; }</style>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment