<commit_before>// Our scene (a sphere is {x,y,x,radius}):
const vec4 spheres[] = {
    {0f, -1000f, 0f, 1000f},
    {-10.295210698945448158f, 0.2000000000000000111f, -10.645055366028099542f, 0.2000000000000000111f},
    {-10.501427040016277914f, 0.2000000000000000111f, -7.7500027603935448539f, 0.2000000000000000111f},
    {-10.872557700239122269f, 0.2000000000000000111f, -4.3544327638112010348f, 0.2000000000000000111f},
    {-10.902072078222408535f, 0.2000000000000000111f, -1.8831885979510842866f, 0.2000000000000000111f},
    {-10.555775311915203574f, 0.2000000000000000111f, 1.4718584708403796846f, 0.2000000000000000111f},
    {-10.682787487609312294f, 0.2000000000000000111f, 4.2549832712858917105f, 0.2000000000000000111f},
    {-10.827007538685574417f, 0.2000000000000000111f, 7.0774502630345521581f, 0.2000000000000000111f},
    {-10.126429281895980239f, 0.2000000000000000111f, 10.21445195865817368f, 0.2000000000000000111f},
    {-7.5215542094781993043f, 0.2000000000000000111f, -10.399048615572974441f, 0.2000000000000000111f},
    {-7.6813561883755028248f, 0.2000000000000000111f, -7.4240190653596069836f, 0.2000000000000000111f},
    {-7.6846758394502101552f, 0.2000000000000000111f, -4.1959648272488268006f, 0.2000000000000000111f},
    {-7.266709793638438164f, 0.2000000000000000111f, -1.6414070001803338084f, 0.2000000000000000111f},
    {-7.8671059867832813239f, 0.2000000000000000111f, 1.8281154279597102708f, 0.2000000000000000111f},
    {-7.6112419237382713533f, 0.2000000000000000111f, 4.576972536416723969f, 0.2000000000000000111f},
    {-7.8312202014960350382f, 0.2000000000000000111f, 7.2034959625452756882f, 0.2000000000000000111f},
    {-7.3155722947325561023f, 0.2000000000000000111f, 10.445899659721181507f, 0.2000000000000000111f},
    {-4.473960349662229774f, 0.2000000000000000111f, -10.79096461534500051f, 0.2000000000000000111f},
    {-4.1449063718784602273f, 0.2000000000000000111f, -7.9329231794923540377f, 0.2000000000000000111f},
    {-4.4244874892756342888f, 0.2000000000000000111f, -4.1293353757355362177f, 0.2000000000000000111f},
    {-4.2622904481831938028f, 0.2000000000000000111f, -1.5847215741407125744f, 0.2000000000000000111f},
    {-4.1019809010438619268f, 0.2000000000000000111f, 1.1129216281697154045f, 0.2000000000000000111f},
    {-4.8376649609301241028f, 0.2000000000000000111f, 4.5345029610674831844f, 0.2000000000000000111f},
    {-4.478513005515560863f, 0.2000000000000000111f, 7.4972365200053898704f, 0.2000000000000000111f},
    {-4.2101476000156257129f, 0.2000000000000000111f, 10.519274001056327705f, 0.2000000000000000111f},
    {-1.9681211839430035049f, 0.2000000000000000111f, -10.433981062052771094f, 0.2000000000000000111f},
    {-1.1147638360504061872f, 0.2000000000000000111f, -7.1869702941272404217f, 0.2000000000000000111f},
    {-1.4334682672750203025f, 0.2000000000000000111f, -4.7767602935433384204f, 0.2000000000000000111f},
    {-1.4139811261091379535f, 0.2000000000000000111f, -1.7987092281691730022f, 0.2000000000000000111f},
    {-1.1501137138810006988f, 0.2000000000000000111f, 1.533285926748067185f, 0.2000000000000000111f},
    {-1.789497465873137072f, 0.2000000000000000111f, 4.749918964318931458f, 0.2000000000000000111f},
    {-1.6274146344978361878f, 0.2000000000000000111f, 7.0367778724990781569f, 0.2000000000000000111f},
    {-1.704463005810975984f, 0.2000000000000000111f, 10.657656410709023476f, 0.2000000000000000111f},
    {1.234447248093783811f, 0.2000000000000000111f, -10.921120734792202356f, 0.2000000000000000111f},
    {1.2598999976180493832f, 0.2000000000000000111f, -7.4000990683678535831f, 0.2000000000000000111f},
    {1.1693809377029538155f, 0.2000000000000000111f, -4.7016688321717081678f, 0.2000000000000000111f},
    {1.6172072122339158362f, 0.2000000000000000111f, -1.890971154393628284f, 0.2000000000000000111f},
    {1.2675596070475876331f, 0.2000000000000000111f, 1.4932378446683287621f, 0.2000000000000000111f},
    {1.4431589395739137238f, 0.2000000000000000111f, 4.778121063997969209f, 0.2000000000000000111f},
    {1.5427979434840382034f, 0.2000000000000000111f, 7.1251523797400295734f, 0.2000000000000000111f},
    {1.3243983439635484967f, 0.2000000000000000111f, 10.1244146083947264f, 0.2000000000000000111f},
    {4.3548944435548033738f, 0.2000000000000000111f, -10.698525478504597785f, 0.2000000000000000111f},
    {4.2594425682444123638f, 0.2000000000000000111f, -7.6727615332230927336f, 0.2000000000000000111f},
    {4.4386841784231361174f, 0.2000000000000000111f, -4.3143999732565134764f, 0.2000000000000000111f},
    {4.3549495390616357327f, 0.2000000000000000111f, -1.2530548611655829561f, 0.2000000000000000111f},
    {4.3697091439273210156f, 0.2000000000000000111f, 1.1224671507254242453f, 0.2000000000000000111f},
    {4.6489052101038392806f, 0.2000000000000000111f, 4.7789813326671719551f, 0.2000000000000000111f},
    {4.0896033667493609798f, 0.2000000000000000111f, 7.0845275594387207008f, 0.2000000000000000111f},
    {4.0480800659395752561f, 0.2000000000000000111f, 10.046357457432895544f, 0.2000000000000000111f},
    {7.5355407307855788446f, 0.2000000000000000111f, -10.523090702854096534f, 0.2000000000000000111f},
    {7.536576604098081944f, 0.2000000000000000111f, -7.4429671579506244683f, 0.2000000000000000111f},
    {7.7440924687311056829f, 0.2000000000000000111f, -4.7970581793226303446f, 0.2000000000000000111f},
    {7.700431597791611793f, 0.2000000000000000111f, -1.7682779898401350671f, 0.2000000000000000111f},
    {7.7040360441431401384f, 0.2000000000000000111f, 1.6071447190362961877f, 0.2000000000000000111f},
    {7.1392513854429129339f, 0.2000000000000000111f, 4.4795613908208906651f, 0.2000000000000000111f},
    {7.4970847560092810369f, 0.2000000000000000111f, 7.5846930676139887595f, 0.2000000000000000111f},
    {7.7595186683349313128f, 0.2000000000000000111f, 10.479663853300735354f, 0.2000000000000000111f},
    {10.137588221812620759f, 0.2000000000000000111f, -10.389968874119222875f, 0.2000000000000000111f},
    {10.511047976976261253f, 0.2000000000000000111f, -7.369728977698832395f, 0.2000000000000000111f},
    {10.600606457376851921f, 0.2000000000000000111f, -4.6927809763699768197f, 0.2000000000000000111f},
    {10.608088652510195615f, 0.2000000000000000111f, -1.253938423981890038f, 0.2000000000000000111f},
    {10.209806997515261884f, 0.2000000000000000111f, 1.8392361376900225878f, 0.2000000000000000111f},
    {10.535047543793917058f, 0.2000000000000000111f, 4.7327248587273063052f, 0.2000000000000000111f},
    {10.697879318334162946f, 0.2000000000000000111f, 7.6833912313915790904f, 0.2000000000000000111f},
    {10.597972968593239784f, 0.2000000000000000111f, 10.785719205578789825f, 0.2000000000000000111f},
    {0f, 1f, 0f, 1f},
    {-4f, 1f, 0f, 1f},
    {4f, 1f, 0f, 1f},
};


const MaterialRef sphere_materials[spheres.length()] = {
    {MT_LAMBERTIAN, 0us},
    {MT_METAL, 0us},
    {MT_LAMBERTIAN, 1us},
    {MT_LAMBERTIAN, 2us},
    {MT_LAMBERTIAN, 3us},
    {MT_LAMBERTIAN, 4us},
    {MT_METAL, 1us},
    {MT_LAMBERTIAN, 5us},
    {MT_LAMBERTIAN, 6us},
    {MT_LAMBERTIAN, 7us},
    {MT_LAMBERTIAN, 8us},
    {MT_LAMBERTIAN, 9us},
    {MT_METAL, 2us},
    {MT_DIELECTRIC, 0us},
    {MT_METAL, 3us},
    {MT_LAMBERTIAN, 10us},
    {MT_LAMBERTIAN, 11us},
    {MT_LAMBERTIAN, 12us},
    {MT_LAMBERTIAN, 13us},
    {MT_LAMBERTIAN, 14us},
    {MT_LAMBERTIAN, 15us},
    {MT_METAL, 4us},
    {MT_METAL, 5us},
    {MT_LAMBERTIAN, 16us},
    {MT_DIELECTRIC, 1us},
    {MT_LAMBERTIAN, 17us},
    {MT_LAMBERTIAN, 18us},
    {MT_LAMBERTIAN, 19us},
    {MT_LAMBERTIAN, 20us},
    {MT_LAMBERTIAN, 21us},
    {MT_LAMBERTIAN, 22us},
    {MT_LAMBERTIAN, 23us},
    {MT_LAMBERTIAN, 24us},
    {MT_LAMBERTIAN, 25us},
    {MT_LAMBERTIAN, 26us},
    {MT_METAL, 6us},
    {MT_LAMBERTIAN, 27us},
    {MT_LAMBERTIAN, 28us},
    {MT_LAMBERTIAN, 29us},
    {MT_LAMBERTIAN, 30us},
    {MT_LAMBERTIAN, 31us},
    {MT_LAMBERTIAN, 32us},
    {MT_LAMBERTIAN, 33us},
    {MT_LAMBERTIAN, 34us},
    {MT_LAMBERTIAN, 35us},
    {MT_METAL, 7us},
    {MT_LAMBERTIAN, 36us},
    {MT_METAL, 8us},
    {MT_LAMBERTIAN, 37us},
    {MT_LAMBERTIAN, 38us},
    {MT_LAMBERTIAN, 39us},
    {MT_LAMBERTIAN, 40us},
    {MT_LAMBERTIAN, 41us},
    {MT_LAMBERTIAN, 42us},
    {MT_LAMBERTIAN, 43us},
    {MT_LAMBERTIAN, 44us},
    {MT_LAMBERTIAN, 45us},
    {MT_METAL, 9us},
    {MT_LAMBERTIAN, 46us},
    {MT_LAMBERTIAN, 47us},
    {MT_LAMBERTIAN, 48us},
    {MT_LAMBERTIAN, 49us},
    {MT_LAMBERTIAN, 50us},
    {MT_LAMBERTIAN, 51us},
    {MT_METAL, 10us},
    {MT_DIELECTRIC, 2us},
    {MT_LAMBERTIAN, 52us},
    {MT_MIRROR, 0us},
};

const vec3 lambertian_params[] = {
    {0.500000f, 0.500000f, 0.500000f},
    {0.334214f, 0.598830f, 0.245096f},
    {0.038055f, 0.013109f, 0.083295f},
    {0.151844f, 0.133713f, 0.838210f},
    {0.308719f, 0.225213f, 0.512404f},
    {0.159689f, 0.017825f, 0.042560f},
    {0.202732f, 0.319271f, 0.486976f},
    {0.264915f, 0.315516f, 0.036563f},
    {0.145383f, 0.137626f, 0.605370f},
    {0.258743f, 0.821297f, 0.451351f},
    {0.042971f, 0.504585f, 0.046851f},
    {0.252330f, 0.701039f, 0.377345f},
    {0.120147f, 0.120917f, 0.030668f},
    {0.129102f, 0.416102f, 0.012610f},
    {0.009431f, 0.007313f, 0.395222f},
    {0.010613f, 0.755576f, 0.090474f},
    {0.030320f, 0.520554f, 0.240231f},
    {0.906345f, 0.692453f, 0.653035f},
    {0.012625f, 0.442037f, 0.553519f},
    {0.023499f, 0.162143f, 0.075335f},
    {0.031723f, 0.698745f, 0.278889f},
    {0.292403f, 0.001087f, 0.195930f},
    {0.087980f, 0.343903f, 0.205990f},
    {0.388390f, 0.124424f, 0.241587f},
    {0.236919f, 0.132071f, 0.507020f},
    {0.054059f, 0.248103f, 0.097631f},
    {0.001180f, 0.283870f, 0.147203f},
    {0.191956f, 0.667360f, 0.351695f},
    {0.142246f, 0.524136f, 0.450787f},
    {0.339337f, 0.153167f, 0.134950f},
    {0.361058f, 0.186037f, 0.087753f},
    {0.743256f, 0.779836f, 0.202061f},
    {0.027923f, 0.044171f, 0.099635f},
    {0.113439f, 0.053192f, 0.309678f},
    {0.348846f, 0.183533f, 0.081422f},
    {0.246701f, 0.321073f, 0.156040f},
    {0.467481f, 0.094709f, 0.034803f},
    {0.408074f, 0.093010f, 0.202567f},
    {0.541880f, 0.051674f, 0.172484f},
    {0.011891f, 0.766517f, 0.023094f},
    {0.578913f, 0.291080f, 0.100118f},
    {0.188728f, 0.165566f, 0.138344f},
    {0.092673f, 0.086955f, 0.227104f},
    {0.280373f, 0.004453f, 0.212255f},
    {0.523031f, 0.213994f, 0.641735f},
    {0.372743f, 0.232754f, 0.247817f},
    {0.261759f, 0.003742f, 0.000294f},
    {0.049221f, 0.121688f, 0.777936f},
    {0.215960f, 0.166061f, 0.638404f},
    {0.876602f, 0.304710f, 0.458105f},
    {0.551363f, 0.870200f, 0.213289f},
    {0.480778f, 0.043873f, 0.374056f},
    {0.400000f, 0.200000f, 0.100000f},
};

const vec3 mirror_params[] = {
    {0.700000f, 0.600000f, 0.500000f},
};

/// {R,G,B,Fuzziness}
const vec4 metal_params[] = {
    {0.598776f, 0.955824f, 0.899220f, 0.167611f},
    {0.534878f, 0.959513f, 0.903862f, 0.474664f},
    {0.741245f, 0.955486f, 0.842109f, 0.107912f},
    {0.893001f, 0.640530f, 0.809798f, 0.153729f},
    {0.536164f, 0.935270f, 0.527029f, 0.002081f},
    {0.956513f, 0.695845f, 0.581566f, 0.409848f},
    {0.959465f, 0.979318f, 0.718248f, 0.382436f},
    {0.887193f, 0.891641f, 0.502704f, 0.146839f},
    {0.828560f, 0.650882f, 0.691448f, 0.404548f},
    {0.842861f, 0.531780f, 0.516446f, 0.093808f},
    {0.798450f, 0.805990f, 0.706241f, 0.322801f},
};

/// {R,G,B, Index of Refraction}
const vec4 dielectric_params[] = {
    {1.0f, 1.0f, 1.0f, 1.500000f},
    {1.0f, 1.0f, 1.0f, 1.500000f},
    {1.0f, 1.0f, 1.0f, 1.500000f},
};
<commit_msg>Made little spheres flush with big sphere.<commit_after>// Our scene (a sphere is {x,y,x,radius}):
const vec4 spheres[] = {
    {0f, -1000f, 0f, 1000f},
    {-10.294082421925516257f, 0.0903856649139243018f, -10.643888748685666812f, 0.2000000000000000111f},
    {-10.500533092103310651f, 0.11485664765916681063f, -7.7493430311237281316f, 0.2000000000000000111f},
    {-10.871812361167547678f, 0.13143396798238882184f, -4.3541342573361934143f, 0.2000000000000000111f},
    {-10.901405190828475256f, 0.13881706462530019053f, -1.8830734019839909799f, 0.2000000000000000111f},
    {-10.555176083411259569f, 0.14322081212094417424f, 1.4717749166225759794f, 0.2000000000000000111f},
    {-10.68208156444389445f, 0.13390635628866220941f, 4.2547021001717837407f, 0.2000000000000000111f},
    {-10.826102257327576694f, 0.11637002089139514283f, 7.0768584943706454027f, 0.2000000000000000111f},
    {-10.125382387315093879f, 0.096596921713171468582f, 10.213395964081550815f, 0.2000000000000000111f},
    {-7.5209350810358266415f, 0.11766963970285360119f, -10.398192629350951677f, 0.2000000000000000111f},
    {-7.6809181056562110257f, 0.14295664397138807544f, -7.4235956590781544406f, 0.2000000000000000111f},
    {-7.684381419135823954f, 0.16167968505101271148f, -4.1958040687068400842f, 0.2000000000000000111f},
    {-7.2665082340496827129f, 0.17225705905445920507f, -1.6413614718285305383f, 0.2000000000000000111f},
    {-7.8668495030466161211f, 0.16739143544737089542f, 1.8280558276598279921f, 0.2000000000000000111f},
    {-7.6109418753519824108f, 0.16057037747941649286f, 4.5767921042037684742f, 0.2000000000000000111f},
    {-7.830777097411295351f, 0.14340694117231578275f, 7.2030883761917730013f, 0.2000000000000000111f},
    {-7.3149777231871739858f, 0.11870896278071541019f, 10.445050671500798245f, 0.2000000000000000111f},
    {-4.4736552418584958346f, 0.13179000227000869927f, -10.790228710853980942f, 0.2000000000000000111f},
    {-4.144740420863589847f, 0.1599546551402681871f, -7.9326055663705092869f, 0.2000000000000000111f},
    {-4.4244064949433923317f, 0.18169041469673175015f, -4.1292597844354883563f, 0.2000000000000000111f},
    {-4.2622463976820865739f, 0.18966299651731333142f, -1.5847051961438809453f, 0.2000000000000000111f},
    {-4.1019438655431725849f, 0.19096950749337793241f, 1.1129115799489357475f, 0.2000000000000000111f},
    {-4.8375586636670391272f, 0.17802276027873631392f, 4.5344033251360773562f, 0.2000000000000000111f},
    {-4.4783423052490878291f, 0.16187698767078018136f, 7.4969507599171194556f, 0.2000000000000000111f},
    {-4.2098774837206125454f, 0.13582877753015054623f, 10.518599101364122461f, 0.2000000000000000111f},
    {-1.9680102932504754953f, 0.14364530417572041188f, -10.433393175801032982f, 0.2000000000000000111f},
    {-1.1147343661580904062f, 0.17355871679637857596f, -7.1867802994092606639f, 0.2000000000000000111f},
    {-1.4334504479308602942f, 0.18756658348445398588f, -4.7767009139689280417f, 0.2000000000000000111f},
    {-1.4139774267218228054f, 0.19738318487839023874f, -1.7987045222208548623f, 0.2000000000000000111f},
    {-1.1501116021295367808f, 0.19816350871337817807f, 1.5332831114448832732f, 0.2000000000000000111f},
    {-1.7894744232019763608f, 0.18712080897887517494f, 4.7498578014378312062f, 0.2000000000000000111f},
    {-1.6273722063153812645f, 0.17392387459722158383f, 7.0365944172878860385f, 0.2000000000000000111f},
    {-1.704363777017016357f, 0.14177131484814253781f, 10.657035953480871626f, 0.2000000000000000111f},
    {1.2343727272902853542f, 0.13962017593371456314f, -10.920461451300326416f, 0.2000000000000000111f},
    {1.2598645163759985f, 0.17183241656766767846f, -7.3998906671401831758f, 0.2000000000000000111f},
    {1.1693672189103778702f, 0.1882659825452037694f, -4.701613673739251098f, 0.2000000000000000111f},
    {1.6172022080880978923f, 0.19690506781751082599f, -1.8909653031363977682f, 0.2000000000000000111f},
    {1.2675571765518169887f, 0.19808215577688770281f, 1.4932349814433996116f, 0.2000000000000000111f},
    {1.443140970281525437f, 0.1875461491081296117f, 4.7780615698895161358f, 0.2000000000000000111f},
    {1.542756963181841634f, 0.17343236136002815329f, 7.1249631191184734647f, 0.2000000000000000111f},
    {1.3243293375344302731f, 0.14788559596240702376f, 10.123887086065646912f, 0.2000000000000000111f},
    {4.354604066029644116f, 0.13330823411956771452f, -10.697812117620294714f, 0.2000000000000000111f},
    {4.2592786246861216171f, 0.16150286231709287676f, -7.6724662129299980862f, 0.2000000000000000111f},
    {4.438599178636675191f, 0.18084639884250464092f, -4.3143173534841459116f, 0.2000000000000000111f},
    {4.3549048415925870614f, 0.18973434522229126742f, -1.2530420003091318204f, 0.2000000000000000111f},
    {4.3696646912241083882f, 0.18982504503424024733f, 1.1224557319564687496f, 0.2000000000000000111f},
    {4.6488019306614463133f, 0.17777969358098744124f, 4.7788751634714285998f, 0.2000000000000000111f},
    {4.0894665996306773792f, 0.16655067500698805816f, 7.0842906341590188291f, 0.2000000000000000111f},
    {4.0478427289789680188f, 0.14135876165187255538f, 10.045768444393310403f, 0.2000000000000000111f},
    {7.5349098862233114815f, 0.11626735841241497837f, -10.52220975286187965f, 0.2000000000000000111f},
    {7.536154015252702898f, 0.14391706137269011379f, -7.4425498179483007277f, 0.2000000000000000111f},
    {7.7437713042100648764f, 0.15851950951753224217f, -4.7968592347853862279f, 0.2000000000000000111f},
    {7.7001913613748174114f, 0.16879597448189542774f, -1.7682228234818886392f, 0.2000000000000000111f},
    {7.7037975755516265863f, 0.16904008705762407772f, 1.6070949719251312882f, 0.2000000000000000111f},
    {7.1389979306184185859f, 0.16449130283103841066f, 4.4794023592383309662f, 0.2000000000000000111f},
    {7.4966586266747894385f, 0.14314929412842047896f, 7.5842619586810613441f, 0.2000000000000000111f},
    {7.7588593271807448915f, 0.11501109146013277496f, 10.47877337620339766f, 0.2000000000000000111f},
    {10.136520710384525401f, 0.094676632447658448655f, -10.388874786426175234f, 0.2000000000000000111f},
    {10.51018234599211354f, 0.11762913534016661288f, -7.369122048136542702f, 0.2000000000000000111f},
    {10.599894479440052919f, 0.13282267998067709414f, -4.692465790957628613f, 0.2000000000000000111f},
    {10.607483734091427863f, 0.14296433388983587065f, -1.2538669190695994615f, 0.2000000000000000111f},
    {10.209257856751920102f, 0.14620362641255724157f, 1.839137213240533697f, 0.2000000000000000111f},
    {10.534345281521245496f, 0.13332704743800150027f, 4.7324093770836404005f, 0.2000000000000000111f},
    {10.696951880653317701f, 0.11328906031030783197f, 7.6827251305380714896f, 0.2000000000000000111f},
    {10.596762053918254765f, 0.085718065000719434465f, 10.78448683919089568f, 0.2000000000000000111f},
    {0f, 1f, 0f, 1f},
    {-4f, 1f, 0f, 1f},
    {4f, 1f, 0f, 1f},
};


const MaterialRef sphere_materials[spheres.length()] = {
    {MT_LAMBERTIAN, 0us},
    {MT_METAL, 0us},
    {MT_LAMBERTIAN, 1us},
    {MT_LAMBERTIAN, 2us},
    {MT_LAMBERTIAN, 3us},
    {MT_LAMBERTIAN, 4us},
    {MT_METAL, 1us},
    {MT_LAMBERTIAN, 5us},
    {MT_LAMBERTIAN, 6us},
    {MT_LAMBERTIAN, 7us},
    {MT_LAMBERTIAN, 8us},
    {MT_LAMBERTIAN, 9us},
    {MT_METAL, 2us},
    {MT_DIELECTRIC, 0us},
    {MT_METAL, 3us},
    {MT_LAMBERTIAN, 10us},
    {MT_LAMBERTIAN, 11us},
    {MT_LAMBERTIAN, 12us},
    {MT_LAMBERTIAN, 13us},
    {MT_LAMBERTIAN, 14us},
    {MT_LAMBERTIAN, 15us},
    {MT_METAL, 4us},
    {MT_METAL, 5us},
    {MT_LAMBERTIAN, 16us},
    {MT_DIELECTRIC, 1us},
    {MT_LAMBERTIAN, 17us},
    {MT_LAMBERTIAN, 18us},
    {MT_LAMBERTIAN, 19us},
    {MT_LAMBERTIAN, 20us},
    {MT_LAMBERTIAN, 21us},
    {MT_LAMBERTIAN, 22us},
    {MT_LAMBERTIAN, 23us},
    {MT_LAMBERTIAN, 24us},
    {MT_LAMBERTIAN, 25us},
    {MT_LAMBERTIAN, 26us},
    {MT_METAL, 6us},
    {MT_LAMBERTIAN, 27us},
    {MT_LAMBERTIAN, 28us},
    {MT_LAMBERTIAN, 29us},
    {MT_LAMBERTIAN, 30us},
    {MT_LAMBERTIAN, 31us},
    {MT_LAMBERTIAN, 32us},
    {MT_LAMBERTIAN, 33us},
    {MT_LAMBERTIAN, 34us},
    {MT_LAMBERTIAN, 35us},
    {MT_METAL, 7us},
    {MT_LAMBERTIAN, 36us},
    {MT_METAL, 8us},
    {MT_LAMBERTIAN, 37us},
    {MT_LAMBERTIAN, 38us},
    {MT_LAMBERTIAN, 39us},
    {MT_LAMBERTIAN, 40us},
    {MT_LAMBERTIAN, 41us},
    {MT_LAMBERTIAN, 42us},
    {MT_LAMBERTIAN, 43us},
    {MT_LAMBERTIAN, 44us},
    {MT_LAMBERTIAN, 45us},
    {MT_METAL, 9us},
    {MT_LAMBERTIAN, 46us},
    {MT_LAMBERTIAN, 47us},
    {MT_LAMBERTIAN, 48us},
    {MT_LAMBERTIAN, 49us},
    {MT_LAMBERTIAN, 50us},
    {MT_LAMBERTIAN, 51us},
    {MT_METAL, 10us},
    {MT_DIELECTRIC, 2us},
    {MT_LAMBERTIAN, 52us},
    {MT_MIRROR, 0us},
};

const vec3 lambertian_params[] = {
    {0.500000f, 0.500000f, 0.500000f},
    {0.334214f, 0.598830f, 0.245096f},
    {0.038055f, 0.013109f, 0.083295f},
    {0.151844f, 0.133713f, 0.838210f},
    {0.308719f, 0.225213f, 0.512404f},
    {0.159689f, 0.017825f, 0.042560f},
    {0.202732f, 0.319271f, 0.486976f},
    {0.264915f, 0.315516f, 0.036563f},
    {0.145383f, 0.137626f, 0.605370f},
    {0.258743f, 0.821297f, 0.451351f},
    {0.042971f, 0.504585f, 0.046851f},
    {0.252330f, 0.701039f, 0.377345f},
    {0.120147f, 0.120917f, 0.030668f},
    {0.129102f, 0.416102f, 0.012610f},
    {0.009431f, 0.007313f, 0.395222f},
    {0.010613f, 0.755576f, 0.090474f},
    {0.030320f, 0.520554f, 0.240231f},
    {0.906345f, 0.692453f, 0.653035f},
    {0.012625f, 0.442037f, 0.553519f},
    {0.023499f, 0.162143f, 0.075335f},
    {0.031723f, 0.698745f, 0.278889f},
    {0.292403f, 0.001087f, 0.195930f},
    {0.087980f, 0.343903f, 0.205990f},
    {0.388390f, 0.124424f, 0.241587f},
    {0.236919f, 0.132071f, 0.507020f},
    {0.054059f, 0.248103f, 0.097631f},
    {0.001180f, 0.283870f, 0.147203f},
    {0.191956f, 0.667360f, 0.351695f},
    {0.142246f, 0.524136f, 0.450787f},
    {0.339337f, 0.153167f, 0.134950f},
    {0.361058f, 0.186037f, 0.087753f},
    {0.743256f, 0.779836f, 0.202061f},
    {0.027923f, 0.044171f, 0.099635f},
    {0.113439f, 0.053192f, 0.309678f},
    {0.348846f, 0.183533f, 0.081422f},
    {0.246701f, 0.321073f, 0.156040f},
    {0.467481f, 0.094709f, 0.034803f},
    {0.408074f, 0.093010f, 0.202567f},
    {0.541880f, 0.051674f, 0.172484f},
    {0.011891f, 0.766517f, 0.023094f},
    {0.578913f, 0.291080f, 0.100118f},
    {0.188728f, 0.165566f, 0.138344f},
    {0.092673f, 0.086955f, 0.227104f},
    {0.280373f, 0.004453f, 0.212255f},
    {0.523031f, 0.213994f, 0.641735f},
    {0.372743f, 0.232754f, 0.247817f},
    {0.261759f, 0.003742f, 0.000294f},
    {0.049221f, 0.121688f, 0.777936f},
    {0.215960f, 0.166061f, 0.638404f},
    {0.876602f, 0.304710f, 0.458105f},
    {0.551363f, 0.870200f, 0.213289f},
    {0.480778f, 0.043873f, 0.374056f},
    {0.400000f, 0.200000f, 0.100000f},
};

const vec3 mirror_params[] = {
    {0.700000f, 0.600000f, 0.500000f},
};

/// {R,G,B,Fuzziness}
const vec4 metal_params[] = {
    {0.598776f, 0.955824f, 0.899220f, 0.167611f},
    {0.534878f, 0.959513f, 0.903862f, 0.474664f},
    {0.741245f, 0.955486f, 0.842109f, 0.107912f},
    {0.893001f, 0.640530f, 0.809798f, 0.153729f},
    {0.536164f, 0.935270f, 0.527029f, 0.002081f},
    {0.956513f, 0.695845f, 0.581566f, 0.409848f},
    {0.959465f, 0.979318f, 0.718248f, 0.382436f},
    {0.887193f, 0.891641f, 0.502704f, 0.146839f},
    {0.828560f, 0.650882f, 0.691448f, 0.404548f},
    {0.842861f, 0.531780f, 0.516446f, 0.093808f},
    {0.798450f, 0.805990f, 0.706241f, 0.322801f},
};

/// {R,G,B, Index of Refraction}
const vec4 dielectric_params[] = {
    {1.0f, 1.0f, 1.0f, 1.500000f},
    {1.0f, 1.0f, 1.0f, 1.500000f},
    {1.0f, 1.0f, 1.0f, 1.500000f},
};
{'fraction_non_alphanumeric': 0.14172311143707667, 'fraction_numerical': 0.5825531731308512, 'mean_word_length': 4.65227993172397, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 192, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '7652499', 'n_tokens_mistral': 20141, 'n_tokens_neox': 11319, 'n_words': 1318}