diff --git a/packages/cultmath/shaders/CultMath.glsl b/packages/cultmath/shaders/CultMath.glsl index 61b6ebdf..50e8f340 100644 --- a/packages/cultmath/shaders/CultMath.glsl +++ b/packages/cultmath/shaders/CultMath.glsl @@ -80,13 +80,14 @@ vec3 cultmath_snoise_permute(vec3 value) { return cultmath_snoise_mod289(((value vec4 cultmath_snoise_permute(vec4 value) { return cultmath_snoise_mod289(((value * 34.0) + 10.0) * value); } // Ashima Arts / Ian McEwan 3D simplex noise (MIT), same float32 evaluation -// order as the C# math.snoise(vec3) mirror. +// order as the C# math.snoise(vec3) mirror. Ties resolve in simplexnoise1234's +// total order; see math.snoise. float cultmath_snoise(vec3 value) { vec2 c = vec2(1.0 / 6.0, 1.0 / 3.0); vec3 i = floor(value + dot(value, c.yyy)); vec3 x0 = value - i + dot(i, c.xxx); - vec3 g = step(x0.yzx, x0.xyz); + vec3 g = vec3(step(x0.y, x0.x), step(x0.z, x0.y), 1.0 - step(x0.z, x0.x)); vec3 l = 1.0 - g; vec3 i1 = min(g.xyz, l.zxy); vec3 i2 = max(g.xyz, l.zxy); @@ -172,7 +173,7 @@ vec4 cultmath_snoise_grad(vec3 value) vec2 c = vec2(1.0 / 6.0, 1.0 / 3.0); vec3 i = floor(value + dot(value, c.yyy)); vec3 x0 = value - i + dot(i, c.xxx); - vec3 g = step(x0.yzx, x0.xyz); + vec3 g = vec3(step(x0.y, x0.x), step(x0.z, x0.y), 1.0 - step(x0.z, x0.x)); vec3 l = 1.0 - g; vec3 i1 = min(g.xyz, l.zxy); vec3 i2 = max(g.xyz, l.zxy); @@ -515,7 +516,7 @@ CultCellular cultmath_cellular(vec3 p) // Included by CultMath.hlsl after its own definitions of cultmath_smoothstep and cultmath_snoise. // Lipschitz constant of cultmath_snoise(vec3); provenance in math.Interval.cs (SNOISE_LIPSCHITZ). -const float CULTMATH_SNOISE_LIPSCHITZ = 10.099261; +const float CULTMATH_SNOISE_LIPSCHITZ = 7.9640074; vec2 cultmath_iv_point(float value) { return vec2(value, value); } vec2 cultmath_iv_add(vec2 a, vec2 b) { return vec2(a.x + b.x, a.y + b.y); } diff --git a/packages/cultmath/tests/CultMath.Tests/GlslMirrorTests.cs b/packages/cultmath/tests/CultMath.Tests/GlslMirrorTests.cs index d920bdda..f14fcda8 100644 --- a/packages/cultmath/tests/CultMath.Tests/GlslMirrorTests.cs +++ b/packages/cultmath/tests/CultMath.Tests/GlslMirrorTests.cs @@ -253,6 +253,25 @@ public sealed class GlslMirrorTests private static float Uniform(System.Random r, float lo, float hi) => lo + (hi - lo) * r.NextSingle(); private static float3 Point3(System.Random r) => new(Uniform(r, -50.0f, 50.0f), Uniform(r, -50.0f, 50.0f), Uniform(r, -50.0f, 50.0f)); + + // A point on the simplex tie set, where snoise's x0 has equal components (NoiseGradTests.SnoiseIsContinuousOnTheSimplexDiagonal): + // seven of eight draws lie on a lattice diagonal v + s (1, 1, 1), v = L - sum(L) / 6 for an integer L, and one of eight on + // the line (t, t, t). A device that runs a different tie rule reads a different function here. + private static float3 TiePoint3(System.Random r) + { + if (r.Next(8) == 0) + { + var t = Uniform(r, -50.0f, 50.0f); + return new float3(t, t, t); + } + + var lx = r.Next(-64, 65); + var ly = r.Next(-64, 65); + var lz = r.Next(-64, 65); + var shift = (lx + ly + lz) / 6.0f; + var s = r.NextSingle(); + return new float3(lx - shift + s, ly - shift + s, lz - shift + s); + } private static int Bits(System.Random r) => r.Next(int.MinValue, int.MaxValue); private static float2 Interval(System.Random r) @@ -316,6 +335,8 @@ public sealed class GlslMirrorTests new("vec2 cultmath_iv_exp(vec2)", "ulp-bounded, platform exp", r => new object[] { Interval(r) }, Platform: Platform.Ulp), new("CultPhasor cultmath_phacelle(vec3, vec3, float, float)", "ulp-bounded, platform exp, sin, cos; across platforms |diff| <= 2^-20 max(|v|, 1)", r => new object[] { Point3(r), Side(r), Uniform(r, 0.0f, 1.0f), 0.5f }, Platform: Platform.Scaled), + new("float cultmath_snoise(vec3)", "ulp-bounded, on the simplex tie set", r => new object[] { TiePoint3(r) }), + new("vec4 cultmath_snoise_grad(vec3)", "ulp-bounded, on the simplex tie set", r => new object[] { TiePoint3(r) }), }; // The fixture text, each case's arguments given by family and point index. diff --git a/packages/cultmath/tests/CultMath.Tests/fixtures/glsl-parity.json b/packages/cultmath/tests/CultMath.Tests/fixtures/glsl-parity.json index 3a945d94..775bbd83 100644 --- a/packages/cultmath/tests/CultMath.Tests/fixtures/glsl-parity.json +++ b/packages/cultmath/tests/CultMath.Tests/fixtures/glsl-parity.json @@ -6041,7 +6041,7 @@ "422f8640 410fc954 c204cfde 3fbd7437 -> bf800000 3f800000", "c0f11528 c23c7a7c c2434da2 3f3118f7 -> bf800000 3f800000", "c1f2e3b6 41a20c3c 411a55cc 3fbe8bb8 -> bf800000 3f800000", - "c23a010c c20f33aa c1fdb69e 3d9fed1b -> bf26ddd9 3f6ceae1", + "c23a010c c20f33aa c1fdb69e 3d9fed1b -> bef85cca 3f423b6d", "c1b77660 c1ce9199 40ef66a0 3f1da819 -> bf800000 3f800000", "bfff2740 c1acf18f c203a3af 3fcc7d26 -> bf800000 3f800000", "c181e23e c0a06d78 c16f2060 3f2f4717 -> bf800000 3f800000", @@ -6064,7 +6064,7 @@ "419ea138 42350398 c1c88b68 3fb38b11 -> bf800000 3f800000", "c0255310 c187dac8 c1f68545 3fa8a8bb -> bf800000 3f800000", "c1fd9c23 c1f80651 c19a5d15 3fddd94b -> bf800000 3f800000", - "4108b110 c221e416 c1b03beb 3e111679 -> bf800000 3f800000", + "4108b110 c221e416 c1b03beb 3e111679 -> bf558d8e 3f800000", "40e94c20 41a593d4 4219708a 3f5374ca -> bf800000 3f800000", "40722110 40f86c98 c1e9acb2 3f03316a -> bf800000 3f800000", "c131e7d4 c209efce c0d4d978 3fd657b6 -> bf800000 3f800000", @@ -6073,11 +6073,11 @@ "c123557c c1d3a13b 413a4f38 3f620ae0 -> bf800000 3f800000", "41fb86f4 c202e154 4162a790 3f93beda -> bf800000 3f800000", "c219dc5c c108f8d4 c2021f1d 3fa7567c -> bf800000 3f800000", - "420e5b5c bc34e000 c186a0a6 3d9b44b3 -> bf4053d2 3f47b24e", + "420e5b5c bc34e000 c186a0a6 3d9b44b3 -> bf16e2a0 3f1e411c", "4240eb6a c2095930 c2354f42 3e780049 -> bf800000 3f800000", "41c3b3e0 424561ca c196181c 3f2381e6 -> bf800000 3f800000", "421eadca c1688d60 4228236a 3fc1f9dd -> bf800000 3f800000", - "c0bba748 40a5e090 c1cef40c 3e2f92e3 -> bf73d2a4 3f800000", + "c0bba748 40a5e090 c1cef40c 3e2f92e3 -> bf161964 3f800000", "414586d4 42271d0e 4189f854 3f2cf0b5 -> bf800000 3f800000", "c223c9e4 c0b85ad0 411d46c4 3f3b0f3c -> bf800000 3f800000", "422e63ae 41519470 c20fcb23 3ff97433 -> bf800000 3f800000", @@ -6093,7 +6093,7 @@ "c14aa2c8 41918ab8 41832378 3fbaf57d -> bf800000 3f800000", "41df2430 41da2c28 4152f0bc 3f0b9955 -> bf800000 3f800000", "c19f9bf9 c1b99959 c1090538 3fcb0f0e -> bf800000 3f800000", - "421f268e c2109520 c21af7dd 3dd692ca -> bf800000 3f68f2ec", + "421f268e c2109520 c21af7dd 3dd692ca -> bf7b89c6 3f2fad88", "beea2c00 40f66a50 41f110dc 3fe41ea0 -> bf800000 3f800000", "41c7f780 c236b8f3 c10e69e8 3e4c7f23 -> bf800000 3f800000", "41d36e08 c1d59995 42241ac8 3fc59853 -> bf800000 3f800000", @@ -6107,15 +6107,15 @@ "c1b74053 40ce7818 423a5abe 3f8bd0ba -> bf800000 3f800000", "4210fb4e 421009de c21dad4c 3fcc03f7 -> bf800000 3f800000", "41ad2ed8 4203b2f2 4205af0c 3f70cf4a -> bf800000 3f800000", - "c23324a4 408691e8 4204b5a2 3e3954bf -> bf800000 3f7bc08c", + "c23324a4 408691e8 4204b5a2 3e3954bf -> bf800000 3f18d1e8", "41e9ef9c c11e7534 c0d4f498 3ffe01eb -> bf800000 3f800000", "c11714f4 420ca052 3ff97c00 3f9c557c -> bf800000 3f800000", - "41118bf8 bf73ddc0 c1ede5c9 3d8c11e0 -> be531518 3f800000", + "41118bf8 bf73ddc0 c1ede5c9 3d8c11e0 -> bd762900 3f800000", "421a2d0c c1b38777 c2349b83 3f82f982 -> bf800000 3f800000", "c22f92e0 41ccfe84 c1a053e2 3fa7e1c7 -> bf800000 3f800000", "c0c19868 c1d112ce 4072a6f0 3f99024d -> bf800000 3f800000", "417319c8 4208507e 42092dca 3fc033a1 -> bf800000 3f800000", - "c1905352 c203369a c153c478 3d61a9c0 -> beaebde6 3f458207", + "c1905352 c203369a c153c478 3d61a9c0 -> be650587 3f276475", "c19f3429 40345360 bfd30540 3e8b5e3b -> bf800000 3f800000", "c2426064 c148bff4 4229d57e 3f56ddc2 -> bf800000 3f800000", "c235fcdc c1675b88 4235fbe4 3f3e9d56 -> bf800000 3f800000", @@ -6126,7 +6126,7 @@ "c2448d78 41d70ff0 c1a7496d 3f56ad3b -> bf800000 3f800000", "c216de59 c201c5de 41ba2cb4 3f37156e -> bf800000 3f800000", "41e9a8e0 42251fee be896280 3fafcafd -> bf800000 3f800000", - "4204a9c4 4218168a 4130f004 3e2d2cae -> bf800000 3f800000", + "4204a9c4 4218168a 4130f004 3e2d2cae -> bf800000 3f58ee06", "c1ad0a96 c205a055 4230023a 3f947e6b -> bf800000 3f800000", "422bc1be c11cb574 423bf572 3fff2bb6 -> bf800000 3f800000", "41d25f6c c22b4d37 41e3ad94 3e80484c -> bf800000 3f800000", @@ -6137,12 +6137,12 @@ "420234fa 41b1f924 c064dac0 3f39a1a8 -> bf800000 3f800000", "40d1d3e0 40d49970 c1b7f2ff 3fb28011 -> bf800000 3f800000", "421e6036 41d05848 4158a21c 3f9b5482 -> bf800000 3f800000", - "41ef2510 c1a4b1b2 4179a788 3dd32d91 -> bf4c5a8d 3f800000", + "41ef2510 c1a4b1b2 4179a788 3dd32d91 -> bf13fd28 3f800000", "c12e72a4 412c9bac c00265d0 3fdcc5ab -> bf800000 3f800000", "41604e90 c1909fe0 4173a508 3f71ba59 -> bf800000 3f800000", "c0436750 c1847e52 c2402a00 3fbf740c -> bf800000 3f800000", "4226b68e c0860320 c1cfa023 3f404b47 -> bf800000 3f800000", - "41ca97d4 c21f3915 c20380d8 3da7d9c1 -> bf39b54f 3f6e1563", + "41ca97d4 c21f3915 c20380d8 3da7d9c1 -> bf0ce864 3f414878", "412c01d8 c0f876c8 40bda7a0 3f1f82ed -> bf800000 3f800000", "417f8088 40f19d90 c1ae4615 3f0c626f -> bf800000 3f800000", "41b38564 41f35a30 c01175c0 3fc53f00 -> bf800000 3f800000", @@ -6152,7 +6152,7 @@ "4095e970 400ee170 41e04414 3f604e92 -> bf800000 3f800000", "3fff86a0 c1bfe497 420d53fc 3fb277c2 -> bf800000 3f800000", "c216d800 4138daf8 c0b48cb8 3ff7f830 -> bf800000 3f800000", - "c2348e08 c204a162 c1ede4a6 3e056fca -> bf5cc87b 3f800000", + "c2348e08 c204a162 c1ede4a6 3e056fca -> bf158d87 3f800000", "c2392ce5 c14279dc 41c5f7b4 3faa5a9d -> bf800000 3f800000", "420ed832 c1c8a15d 42131ffe 3fb806db -> bf800000 3f800000", "c1547eb0 3f65b140 c19f64e8 3ff77de4 -> bf800000 3f800000", @@ -6163,7 +6163,7 @@ "41cb97ac c21712e8 41924e64 3fe7f7fb -> bf800000 3f800000", "41062cf4 c206c510 c044e300 3fb11fb9 -> bf800000 3f800000", "c1cc1020 c1da00b2 c1497a34 3f1891b0 -> bf800000 3f800000", - "41773870 c22f5a45 c22bbfba 3cbc2c13 -> bec0752c 3db45e80", + "41773870 c22f5a45 c22bbfba 3cbc2c13 -> bea75872 3d1fd730", "4237c028 421aa0fa 42011f92 3f6a9b89 -> bf800000 3f800000", "41685bb0 420361bc c0c316e8 3fb87e0f -> bf800000 3f800000", "c1197ce4 c22de45c c1b8636b 3ec5c2c3 -> bf800000 3f800000", @@ -6172,11 +6172,11 @@ "42026f92 c1288478 c13b60f0 3fb61469 -> bf800000 3f800000", "c1f36f24 c1b123ee c14fad10 3f1ad87d -> bf800000 3f800000", "423599dc c0550050 bfdb8240 3fbbd2ec -> bf800000 3f800000", - "41daf82c 41c24c28 3efa6b00 3e04a41c -> bf800000 3f1dcb25", + "41daf82c 41c24c28 3efa6b00 3e04a41c -> bf800000 3eadf9d6", "4236fd76 c1f85e26 413eab08 3fed1321 -> bf800000 3f800000", "41929fe8 4238f08a 3e4de200 3f84d214 -> bf800000 3f800000", "421d6ca6 c1b2c9e0 c22d243b 3ff63525 -> bf800000 3f800000", - "3fa78a60 c1a2336e 419cba74 3dd3371d -> bf1c5866 3f800000", + "3fa78a60 c1a2336e 419cba74 3dd3371d -> bec7f0e7 3f800000", "c2210abd 42024d0a c1fc1443 3f909e71 -> bf800000 3f800000", "3ebc9b80 c21b5185 c1be3559 3f3be2f6 -> bf800000 3f800000", "c08597f8 c2113843 41d5399c 3feff853 -> bf800000 3f800000", @@ -6190,14 +6190,14 @@ "422aeb98 c1c5fc42 c04e2e70 3f8beb2a -> bf800000 3f800000", "c1f35889 40cee8b0 422e77e2 3f37417f -> bf800000 3f800000", "420f0066 c1fba859 c1fd41e1 3fdcf0be -> bf800000 3f800000", - "c200d76d c1ad04fa c22d43c0 3df4714d -> bf800000 3f1bcf42", + "c200d76d c1ad04fa c22d43c0 3df4714d -> bf800000 3eb521ea", "c1bcac7f c18f1254 4189a08c 3fa3ba91 -> bf800000 3f800000", - "c1a4abed c17b2028 c209e961 3dcdd711 -> bf151c77 3f800000", + "c1a4abed c17b2028 c209e961 3dcdd711 -> bebc5798 3f800000", "c1734554 c21c16c5 c20561f5 3e9ab5ee -> bf800000 3f800000", "421febb6 c0394630 c18d0088 3fd693ae -> bf800000 3f800000", "c22433c0 c1b52288 bfc17c60 3fbb5bc9 -> bf800000 3f800000", "40e14a20 c241e4ef 41865698 3f281c92 -> bf800000 3f800000", - "422b4048 c0802eb0 c22f5309 3d58fc10 -> bf259e44 3ed89c0f", + "422b4048 c0802eb0 c22f5309 3d58fc10 -> bf08a931 3e9eb1e9", "c1dbf6d2 422a67ec c0075000 3f79847c -> bf800000 3f800000", "c1582078 40f63e18 41930a98 3ef2e26a -> bf800000 3f800000", "c1b9796d 42287de2 40a52780 3f959f50 -> bf800000 3f800000", @@ -6212,7 +6212,7 @@ "41b19398 4220407c 415719b8 3e9c7d39 -> bf800000 3f800000", "41fd8308 41030330 422bf4e0 3e927a8f -> bf800000 3f800000", "c2472468 418c305c c20645a7 3fe139b2 -> bf800000 3f800000", - "c20afcfa 40ee8948 419697b4 3d783d2a -> bed6e6cd 3f4ded8e", + "c20afcfa 40ee8948 419697b4 3d783d2a -> be94a519 3f2cccb4", "c224bdde c0d04b28 4105b754 3fec9647 -> bf800000 3f800000", "c1e805c5 41adea20 c19daeb9 3ff7d4ee -> bf800000 3f800000", "41153bf4 41dd2598 c08f9dd0 3fb802f9 -> bf800000 3f800000", @@ -6220,10 +6220,10 @@ "41dc4adc 41285a24 c1fe1feb 3fe5f490 -> bf800000 3f800000", "41a08848 c182dfc8 c0d996a0 3e1315f4 -> bf800000 3f800000", "c109620c 40dba650 4204d448 3f9b37ac -> bf800000 3f800000", - "4239f5d6 423200c4 c1b8788c 3de8daf1 -> bf800000 3f0224eb", + "4239f5d6 423200c4 c1b8788c 3de8daf1 -> bf800000 3e87fcb4", "42447cf4 41ccbcc4 c1d43c62 3f349079 -> bf800000 3f800000", - "3eac4500 416950f8 42375140 3c264d95 -> be372f97 3cd60d00", - "411c5f60 418516bc 40bd3448 3da7ac80 -> bf7bbb30 3f2b9d40", + "3eac4500 416950f8 42375140 3c264d95 -> be20fe00 3b920130", + "411c5f60 418516bc 40bd3448 3da7ac80 -> bf4efa59 3efdb8d2", "c2154b7a c1e702be c20edca0 3fde04f9 -> bf800000 3f800000", "c229964b c130ad84 c21e4170 3f8c2b4f -> bf800000 3f800000", "c12c7b84 41e805dc c188ada6 3fc07a13 -> bf800000 3f800000", @@ -6231,7 +6231,7 @@ "421a20ca 419d6ba4 c246bac5 3fa60025 -> bf800000 3f800000", "3f33c4c0 c1220330 41b5f294 3efa16db -> bf800000 3f800000", "422018d0 c1ca827d c1b6e59e 3e8518f4 -> bf800000 3f800000", - "416b1520 c200e4b0 c19f9dd9 3d8e7d1b -> bedbc41a 3f79dfe7", + "416b1520 c200e4b0 c19f9dd9 3d8e7d1b -> be8fb422 3f53d7eb", "41ddd324 c12d8630 4231d636 3ed02d3e -> bf800000 3f800000", "c0ed74b0 4239f34e 404091c0 3f935660 -> bf800000 3f800000", "42084236 41b1ae78 418357e4 3ece6de1 -> bf800000 3f800000", @@ -6278,13 +6278,13 @@ "415ca654 c22c8f0e 4223c4b0 3fff62bc -> bf800000 3f800000", "c1f28763 c0ff3190 c231c21a 3f2edbc1 -> bf800000 3f800000", "4231cf76 c10929b0 c2047736 3fcd5709 -> bf800000 3f800000", - "40e61f48 422537c2 c21e3e39 3e174beb -> bf800000 3f800000", + "40e61f48 422537c2 c21e3e39 3e174beb -> bf800000 3f49cf31", "41ae1f00 4233fd3e 4227ead0 3e883e1c -> bf800000 3f800000", "411c9cd4 c1f2641a 421cbfec 3f86b975 -> bf800000 3f800000", "41aa4190 c23cc9eb 4226b49c 3fbe4769 -> bf800000 3f800000", "c19083b1 41358cec c1e9b1be 3ec8d60a -> bf800000 3f800000", "41858f54 419fd8e4 41aaed18 3ffd0c29 -> bf800000 3f800000", - "41f1fbd8 42455b48 4246756e 3dea39ba -> bf604cd3 3f800000", + "41f1fbd8 42455b48 4246756e 3dea39ba -> bf21c8a3 3f800000", "c09762b0 42055420 4207e318 3f829dbd -> bf800000 3f800000", "416b38d0 41e11dd0 4201ef12 3ff5499c -> bf800000 3f800000", "be88fb00 c1c74cc0 41ed74cc 3fab349c -> bf800000 3f800000", @@ -6301,7 +6301,7 @@ "c1f07d92 c219a0a2 c1b74111 3fb97222 00000004 40000000 3f000000 -> bff00000 3ff00000", "423587d0 42113b7a 418ff060 3fc3c202 00000004 40000000 3f000000 -> bff00000 3ff00000", "c1645498 c13cf5d0 42179b50 3fee7415 00000004 40000000 3f000000 -> bff00000 3ff00000", - "c1ed71fb 423773be c1cb5739 3e0d345b 00000004 40000000 3f000000 -> bff00000 3ff00000", + "c1ed71fb 423773be c1cb5739 3e0d345b 00000004 40000000 3f000000 -> bff00000 3fe9780e", "41fd51ac 407b5e50 c22d0ae2 3ffe0362 00000004 40000000 3f000000 -> bff00000 3ff00000", "c19f458b c1b5ca2d 41f962c8 3f56b8f0 00000004 40000000 3f000000 -> bff00000 3ff00000", "41a6e3d4 4202ef34 40aa5130 3e900ac9 00000004 40000000 3f000000 -> bff00000 3ff00000", @@ -6344,7 +6344,7 @@ "c21f5a74 4150b72c 416ccbc8 3fc5bd5d 00000004 40000000 3f000000 -> bff00000 3ff00000", "c0f4f520 c12cc8c4 c1b584e2 3fff51a1 00000004 40000000 3f000000 -> bff00000 3ff00000", "41d792c0 c1a77a72 42251384 3ec5e1db 00000004 40000000 3f000000 -> bff00000 3ff00000", - "40aaa020 c1219fb4 40eb8848 3d56bf1e 00000004 40000000 3f000000 -> bfe4adcf 3f80fe4d", + "40aaa020 c1219fb4 40eb8848 3d56bf1e 00000004 40000000 3f000000 -> bfc80532 3f5b852c", "41ca7dd8 c247e07f c19fbb31 3fafb3b3 00000004 40000000 3f000000 -> bff00000 3ff00000", "c08b64a8 c2246bca c20faf42 3ec05ae7 00000004 40000000 3f000000 -> bff00000 3ff00000", "c1138a20 41cc123c 40b85690 3f1f9ba0 00000004 40000000 3f000000 -> bff00000 3ff00000", @@ -6354,15 +6354,15 @@ "41a34a24 c103cc50 c212096b 3fcae792 00000004 40000000 3f000000 -> bff00000 3ff00000", "419af9c0 c22e67b9 c2341cbc 3f8543c6 00000004 40000000 3f000000 -> bff00000 3ff00000", "c1e84460 42387890 40db63c8 3f3f2e98 00000004 40000000 3f000000 -> bff00000 3ff00000", - "41fe4c1c 4234c494 c210b44a 3cd7a996 00000004 40000000 3f000000 -> beee164a 3fa85c9e", + "41fe4c1c 4234c494 c210b44a 3cd7a996 00000004 40000000 3f000000 -> be97be92 3f9b1541", "bf845e40 c07c6f60 c158c500 3fab249f 00000004 40000000 3f000000 -> bff00000 3ff00000", "4205c2fc 4238af3a c1f48667 3fe674ac 00000004 40000000 3f000000 -> bff00000 3ff00000", "c1b9facf 41a5e7a0 c2012fb1 3ea33998 00000004 40000000 3f000000 -> bff00000 3ff00000", "4225b5f8 4201628c c12180d8 3fa9caca 00000004 40000000 3f000000 -> bff00000 3ff00000", - "c2112bb6 420a7272 4240d3a4 3da0f2ce 00000004 40000000 3f000000 -> bf9974ce 3ff00000", + "c2112bb6 420a7272 4240d3a4 3da0f2ce 00000004 40000000 3f000000 -> bf83fa27 3ff00000", "42359da0 c172b9d4 bf20be40 3f3031a6 00000004 40000000 3f000000 -> bff00000 3ff00000", "41a44bb4 c2391683 c21f4f7c 3fd7867f 00000004 40000000 3f000000 -> bff00000 3ff00000", - "c19f6898 41700f80 c1341964 3e03cc83 00000004 40000000 3f000000 -> bff00000 3ff00000", + "c19f6898 41700f80 c1341964 3e03cc83 00000004 40000000 3f000000 -> bfd5bfcc 3ff00000", "c1c31e46 c032f3b0 c1bf9d22 3eaa85ee 00000004 40000000 3f000000 -> bff00000 3ff00000", "41b46920 c1f41a0c 413fb3e0 3fbe166b 00000004 40000000 3f000000 -> bff00000 3ff00000", "c1dd5fc1 c1d43539 401fc9b0 3ffc8122 00000004 40000000 3f000000 -> bff00000 3ff00000", @@ -6401,7 +6401,7 @@ "41dd734c c226b249 c1d4c78d 3fa7cad4 00000004 40000000 3f000000 -> bff00000 3ff00000", "42155e1c 4235e68a 41646f68 3f16a2c0 00000004 40000000 3f000000 -> bff00000 3ff00000", "c22342a1 414ae1fc 4232b9e6 3f9e975d 00000004 40000000 3f000000 -> bff00000 3ff00000", - "c20d42e6 41748c68 c1e687f7 3e226daf 00000004 40000000 3f000000 -> bff00000 3ff00000", + "c20d42e6 41748c68 c1e687f7 3e226daf 00000004 40000000 3f000000 -> bff00000 3fe1c714", "422b5714 410829bc c213061a 3f835f6a 00000004 40000000 3f000000 -> bff00000 3ff00000", "41781270 4199c670 406af290 3f284f89 00000004 40000000 3f000000 -> bff00000 3ff00000", "42445d7c 40576fb0 41fefcec 3f4c6497 00000004 40000000 3f000000 -> bff00000 3ff00000", @@ -6411,7 +6411,7 @@ "41bd4638 c24758f0 416541b0 3ff4eb55 00000004 40000000 3f000000 -> bff00000 3ff00000", "c127f708 41cae6e4 c1f62e89 3f9a4a7c 00000004 40000000 3f000000 -> bff00000 3ff00000", "c1f7b8f8 407d8bf0 4234fdb8 3fbc939e 00000004 40000000 3f000000 -> bff00000 3ff00000", - "423a6988 41bf646c c0519ce0 3e2e2f95 00000004 40000000 3f000000 -> bff00000 3ff00000", + "423a6988 41bf646c c0519ce0 3e2e2f95 00000004 40000000 3f000000 -> bfc67fcb 3ff00000", "4094f470 4222407a 41837b90 3f2e1fe9 00000004 40000000 3f000000 -> bff00000 3ff00000", "c21197eb c1cce7ed c202ff90 3fd4f346 00000004 40000000 3f000000 -> bff00000 3ff00000", "4211f3de 410d94f4 c212964b 3f716539 00000004 40000000 3f000000 -> bff00000 3ff00000", @@ -6424,7 +6424,7 @@ "c0cfc4b0 c23c9ae7 c2365094 3f7c67bd 00000004 40000000 3f000000 -> bff00000 3ff00000", "4203a6a0 41f939d4 c2234660 3fce7f4e 00000004 40000000 3f000000 -> bff00000 3ff00000", "414026f8 41b0d974 41266218 3f99769d 00000004 40000000 3f000000 -> bff00000 3ff00000", - "42438d0c c2169429 3ffb5e60 3cea8023 00000004 40000000 3f000000 -> bf45c5d0 3f865d64", + "42438d0c c2169429 3ffb5e60 3cea8023 00000004 40000000 3f000000 -> bf16d493 3f6d6f4a", "4239292e 41fb114c c239bc61 3ff76fbe 00000004 40000000 3f000000 -> bff00000 3ff00000", "423ce6f8 c0e96200 424758e2 3feb7971 00000004 40000000 3f000000 -> bff00000 3ff00000", "c239e042 41113a7c 401a75a0 3fd6ebea 00000004 40000000 3f000000 -> bff00000 3ff00000", @@ -6434,10 +6434,10 @@ "bf96fe60 c2154380 413b812c 3f9eda37 00000004 40000000 3f000000 -> bff00000 3ff00000", "413397a8 412eddf0 41149310 3ebce69e 00000004 40000000 3f000000 -> bff00000 3ff00000", "3f142180 c1427008 41e2e7d0 3f4a2a8f 00000004 40000000 3f000000 -> bff00000 3ff00000", - "405a18d0 c21cee1e 41705c80 3c8b45e2 00000004 40000000 3f000000 -> be608532 3f7e183a", + "405a18d0 c21cee1e 41705c80 3c8b45e2 00000004 40000000 3f000000 -> bd97a84b 3f66d6ce", "c23bf3c8 c2163a39 c0884550 3ef4784f 00000004 40000000 3f000000 -> bff00000 3ff00000", "c1aa14e0 c1c61d8c 41308b9c 3eef1579 00000004 40000000 3f000000 -> bff00000 3ff00000", - "c085a310 c201e9d0 c2270b21 3dfa38b6 00000004 40000000 3f000000 -> bff00000 3ff00000", + "c085a310 c201e9d0 c2270b21 3dfa38b6 00000004 40000000 3f000000 -> bff00000 3fe413bf", "41b7c2c0 c186fc56 c21dabd7 3fadf069 00000004 40000000 3f000000 -> bff00000 3ff00000", "4243d1b8 41ee9b74 c00ab2b0 3fd8722b 00000004 40000000 3f000000 -> bff00000 3ff00000", "41f7e6ec c1432290 c199f88a 3f5a44a9 00000004 40000000 3f000000 -> bff00000 3ff00000", @@ -6476,7 +6476,7 @@ "c0aeaa58 c23a0e20 42382602 3f6191c5 00000004 40000000 3f000000 -> bff00000 3ff00000", "4235c05e c184464e 4117b44c 3ec600ec 00000004 40000000 3f000000 -> bff00000 3ff00000", "42314bbc c2373532 c0761810 3fdef4b3 00000004 40000000 3f000000 -> bff00000 3ff00000", - "c21fa19d 41e9d630 c1d6174b 3e32d8d7 00000004 40000000 3f000000 -> bff00000 3ff00000", + "c21fa19d 41e9d630 c1d6174b 3e32d8d7 00000004 40000000 3f000000 -> bff00000 3fd46f06", "c2307e8f c1aadaa7 412302fc 3fa72feb 00000004 40000000 3f000000 -> bff00000 3ff00000", "42192c76 4183dbb8 420c21e4 3f80274d 00000004 40000000 3f000000 -> bff00000 3ff00000", "c1965dce 41c09aa4 411ae120 3f2bd7f6 00000004 40000000 3f000000 -> bff00000 3ff00000", @@ -6489,7 +6489,7 @@ "42364c8c 42015d36 41c093cc 3fc7dc37 00000004 40000000 3f000000 -> bff00000 3ff00000", "c1fc6007 c07fdce0 c214b3de 3edb2734 00000004 40000000 3f000000 -> bff00000 3ff00000", "41be4924 c1c0633c 41edc034 3f6980fa 00000004 40000000 3f000000 -> bff00000 3ff00000", - "c211056a c22274c1 41c1b3f8 3ddbaaea 00000004 40000000 3f000000 -> bfd69c86 3ff00000", + "c211056a c22274c1 41c1b3f8 3ddbaaea 00000004 40000000 3f000000 -> bfb94bc9 3ff00000", "41163600 40aa6450 c2474439 3fc87be8 00000004 40000000 3f000000 -> bff00000 3ff00000", "c05c0b30 41df1c54 4174e310 3fd4055d 00000004 40000000 3f000000 -> bff00000 3ff00000", "c20d86fc 41419894 40dc82b8 3ebe71e2 00000004 40000000 3f000000 -> bff00000 3ff00000", @@ -6518,7 +6518,7 @@ "c20f6d1e 4143b82c 41e2e630 3f4ca0a2 00000004 40000000 3f000000 -> bff00000 3ff00000", "41b89bf8 c1d51421 4202a4fa 3f64ec38 00000004 40000000 3f000000 -> bff00000 3ff00000", "c19e8543 c16d541c c12bc0ac 3e8312f1 00000004 40000000 3f000000 -> bff00000 3ff00000", - "4164a980 c0ddae48 c2389355 3d649ea0 00000004 40000000 3f000000 -> bfb71df2 3faf4eeb", + "4164a980 c0ddae48 c2389355 3d649ea0 00000004 40000000 3f000000 -> bfa7dca9 3f90cc57", "4219cd52 c1a80ca4 3d99dc00 3f267284 00000004 40000000 3f000000 -> bff00000 3ff00000", "40f22358 420d7b98 416fb358 3e82e195 00000004 40000000 3f000000 -> bff00000 3ff00000", "c2114dcb c23446e5 c20ab1af 3fbb00f0 00000004 40000000 3f000000 -> bff00000 3ff00000", @@ -6527,11 +6527,11 @@ "4219151a 414e2b00 409f5908 3f32d155 00000004 40000000 3f000000 -> bff00000 3ff00000", "c1439b94 41a70eec 41691608 3ea7deb0 00000004 40000000 3f000000 -> bff00000 3ff00000", "c219f08c c2349f3b 40ad11b8 3fa9ad30 00000004 40000000 3f000000 -> bff00000 3ff00000", - "c1a66476 c08dcdb8 c14afec4 3dd79d7e 00000004 40000000 3f000000 -> bfb491b8 3ff00000", + "c1a66476 c08dcdb8 c14afec4 3dd79d7e 00000004 40000000 3f000000 -> bf97cb6e 3ff00000", "c233de2b 41a7bbf0 4106954c 3f137fb1 00000004 40000000 3f000000 -> bff00000 3ff00000", "423d0136 4179fe98 c1bde6ee 3fae7e33 00000004 40000000 3f000000 -> bff00000 3ff00000", "c227d862 c2217eae 419be448 3f59807d 00000004 40000000 3f000000 -> bff00000 3ff00000", - "c1a088e9 c207de52 c1d744c7 3e0dd72b 00000004 40000000 3f000000 -> bfdceef0 3ff00000", + "c1a088e9 c207de52 c1d744c7 3e0dd72b 00000004 40000000 3f000000 -> bfb7133e 3ff00000", "c154417c 42086866 c20e1d28 3f03155a 00000004 40000000 3f000000 -> bff00000 3ff00000", "41c01d1c c20b4546 4232cdca 3fddedf0 00000004 40000000 3f000000 -> bff00000 3ff00000", "c1e993d3 bfaf6a80 c2431c03 3e35c328 00000004 40000000 3f000000 -> bff00000 3ff00000", @@ -6548,7 +6548,7 @@ "423f555a c2366d8b c2287c5a 3f9785e9 00000004 40000000 3f000000 -> bff00000 3ff00000", "41399560 42274d64 421bc45a 3fdf3279 00000004 40000000 3f000000 -> bff00000 3ff00000", "42195024 41846bfc 420d27a4 3ffca3f4 00000004 40000000 3f000000 -> bff00000 3ff00000", - "4143603c c23109c9 c1b76371 3caad5d3 00000004 40000000 3f000000 -> bf8ea1e0 3ecc763e", + "4143603c c23109c9 c1b76371 3caad5d3 00000004 40000000 3f000000 -> bf7b111c 3e6a832e", "c1f3b972 4242f084 4242205a 3f4628b4 00000004 40000000 3f000000 -> bff00000 3ff00000", "41968490 c1ad3591 c0f22840 3f0bd3ed 00000004 40000000 3f000000 -> bff00000 3ff00000", "419cc42c 41bf0d0c 4103e728 3ec4ecc5 00000004 40000000 3f000000 -> bff00000 3ff00000" @@ -7342,6 +7342,530 @@ "4202dc38 41e63848 42022206 c0bce9fa c02540d7 c0255520 3f47559a 3f000000 -> c084d4fc bfadaba0 bf72e71b bddc8f95 3dda9c31 3fbc9547 3f9a20cf bf31ddcc", "c23292a4 c22a8178 c2430002 c07e63c5 40af967c c0681e7e 3e8d9922 3f000000 -> c075f932 4021c599 bff901fa bf2674b0 40528333 c00a732d 3fd51bfd bf427ed1" ] + }, + { + "glsl": "float cultmath_snoise(vec3)", + "tolerance": "ulp-bounded, on the simplex tie set", + "cases": [ + "42101793 c21be86d c0ff4367 -> 3f0b6571", + "c16005b2 420bfe93 c00016ca -> bf1b7d58", + "4186163c 414c2c79 c250f4e1 -> bf293e3d", + "c1ae4edc 41b1b124 422cd892 -> bf166489", + "41d3f056 c0207d52 c1cc0faa -> 3d672c77", + "423e12a4 c221ed5c 422a12a4 -> be138760", + "416b0c20 416b0c20 416b0c20 -> bf264714", + "c25d17e3 420ee81d 420ae81d -> 3e556a08", + "c2355597 c2355597 c2355597 -> be2d7849", + "41e69d22 c244b16f c18962de -> 3f0ba67b", + "415a0446 418d0224 418d0224 -> 3ec0e014", + "41ae8e8a c00b8bae c248b8bb -> 3d493310", + "c2485705 c1a8ae09 425fa8fb -> 3e9a4c72", + "41800913 c24bfb76 4230048a -> 3bbee378", + "c22b1eb5 41e1c296 c031eb51 -> be9071e1", + "c18a1c64 c1821c64 41fde39c -> 3e240f96", + "4244307a c14f3e18 c1d79f0c -> 3e306bb5", + "4169ecf1 c1cb0988 c136130f -> 3ea5029c", + "41ccb06d 419cb06d c24da7ca -> 3f257dfa", + "411a57b1 410a57b1 c2156a14 -> bf3db042", + "4150e9b2 c1f78b27 c18f8b27 -> 3f0241fb", + "c2365216 c2365216 c2365216 -> 3e35ef14", + "c131e43e 40fc3783 423b86f1 -> bf1e07b3", + "40c44913 c22f76de 40a44913 -> bf4c78fc", + "423cf8a3 c22b075d c16c1d72 -> 3ea06505", + "c1d80ea9 c2480755 4277f8ab -> bc97fd7b", + "417015b4 c13fea4c 41d00adb -> bf1a70d1", + "40f2862d 422650c5 c209af3b -> bf1e6f15", + "41591060 420e4419 41291060 -> beb85e22", + "41258130 40eb0261 418ac098 -> bdce06a0", + "c21e6e11 bfcdc22c c1ccdc23 -> bf031bce", + "c253d27d 42382d83 c17f49f5 -> 3effb419", + "c21588dc 418cee47 418cee47 -> be0736c5", + "c2414913 4272b6ed c2194913 -> 3daafcdf", + "411e7ebc 411e7ebc 411e7ebc -> bf1a70e3", + "41eb3975 bf18d15c c2066345 -> bf39607e", + "c2104c35 4217b3cb c2144c35 -> bf2ba806", + "423e2ce8 c1f3a632 4091673b -> bf2bbf73", + "c18450a5 c1bc50a5 c19c50a5 -> bcba69ae", + "c13de9ce 41c10b19 4228858c -> bf2dc157", + "c1e087a7 414ef0b3 419f7859 -> bebaad19", + "4148840b 42222103 c0aef7ea -> 3ef9cd78", + "415c7b06 c1c9c27d 41f63d83 -> 3f1ba7b7", + "41706f52 41506f52 c1b7c857 -> 3eaa73d8", + "c1ae4ede 4244d891 c1ee4ede -> beb1d769", + "4245906d 41eb20da c2226f93 -> 3e516a38", + "4246696e 3fcd2dca c2519692 -> bf21ac15", + "3ffc0680 3ffc0680 3ffc0680 -> 3da12b7b", + "c17970b8 c17970b8 c17970b8 -> bdc659ec", + "41448f7c 41448f7c 41448f7c -> beec41ef", + "41b19451 c1b66baf 41e19451 -> 3ec02c55", + "c0d7aa13 419a157b c216f543 -> 3e7bc777", + "412fcde2 c2200c88 3ffe6f0e -> bdaeb7c8", + "c1776ed9 4272244a c251dbb6 -> be07428f", + "40f1dd80 c1171140 422e3bb0 -> bf10a782", + "c18ed0b8 c1e6d0b8 41325e90 -> 3f538113", + "c161daab c171daab c188ed55 -> 3f13ab84", + "41158c14 41158c14 c24a9cfb -> 3e663427", + "c122dc27 c1b96e13 c1d96e13 -> be88a4e2", + "c1865805 4189a7fb 41434ff7 -> 3e910bed", + "c21b0cd0 c16c333f 4191e660 -> 3e16f485", + "c19cf121 41361dbf c2227890 -> beaeb612", + "c209415c c241415c 42875f53 -> be680992", + "c21b0567 4224fa99 41a1f532 -> becad777", + "42170a3e 42330a3e c238f5c2 -> 3ee36a71", + "3eb417aa c15a5f43 4165a0bd -> be63e4b0", + "40c4a547 bf5ad5cb 41d92952 -> 3da73820", + "423ade7f 414b79fd c1648603 -> 3ea2aeb1", + "c240f7da 40308262 410c2098 -> bed4246e", + "c2022372 c2062372 4231dc8e -> bf172d7e", + "40248770 40248770 40248770 -> be2ec0a5", + "c204003d 421fffc3 c1a80078 -> bf15791a", + "4137bc74 4137bc74 4137bc74 -> 3d36d618", + "42068770 42068770 42068770 -> 3f513c53", + "41d7cdea 410f9bd5 41a7cdea -> 3e689353", + "c21e7b0c 424984f4 420984f4 -> 3e061bff", + "3e79bd34 c0b83216 c2230642 -> 3e51e14d", + "c15b8000 42492000 c0f70000 -> 3eac7579", + "4103a583 425ce961 c227169f -> be8bcee8", + "c103030e c254c0c3 42073f3d -> beaf9b54", + "c2292eeb c052eeb4 4185a22a -> 3e8933d8", + "41cfa5a5 4197a5a5 c1f85a5b -> be637b3a", + "c250604b 42279fb5 422f9fb5 -> bdabc3f3", + "4152e045 c23b47ef 4230b811 -> 3e55b150", + "c213eecf c213eecf 420c1131 -> be0970da", + "421a9019 c145bf9b 3f240650 -> be2c524c", + "c19ef057 c17de0ae 41810fa9 -> bdac05ca", + "42383bea 41a077d3 c15f1059 -> be58075b", + "41bde07d 410bc0f9 415bc0f9 -> bed6b808", + "41e491cf c25db718 41b491cf -> 3e886641", + "c1eb0107 c1eb0107 c1eb0107 -> be6cca06", + "41de9035 bf96fca9 41c69035 -> 3dd23862", + "c22c4e3d c08271e5 c0a271e5 -> 3d1f3e05", + "423e028a 423e028a 423e028a -> bc1c0cdd", + "40b928db 4223251c c1d9b5ca -> 3f1e16ca", + "c2014e41 c2014e41 c2014e41 -> bec05c66", + "41ff41e6 c2045f0d c20c5f0d -> 3f0e016f", + "bf2a562a c216a959 bfd52b15 -> bc384e7c", + "421a3eae bfb82a34 c201c152 -> bed37477", + "c1b197e7 421b340d 422f340d -> 3e601579", + "421089b4 c213764c c10dd930 -> be60fb64", + "41923de8 c23ae10c 42551ef4 -> bf3050af", + "42197d8a c15a09d6 42017d8a -> becb6e4d", + "c2711f54 41edc158 41ddc158 -> be5b0f68", + "408b5ae3 40eb5ae3 41ead6b8 -> bd731314", + "4104b872 41b25c39 c12b478e -> bdce4bd7", + "c0d7cfdb c21ef9fc 41da0c0a -> 3e3f15df", + "c08d3c18 c08d3c18 c08d3c18 -> bf2d81e5", + "41917cab c21b41ab 41d97cab -> 3c4bbbcd", + "c221f754 c221f754 c221f754 -> bd050888", + "42283674 c20bc98c 4100d9d1 -> 3ebbe2a1", + "c22597a8 422a6858 c1bb2f51 -> 3e9afa10", + "41d0607c c22bcfc2 c0fe7e11 -> 3f4e3ac0", + "c2259259 c2259259 c2259259 -> bf247382", + "418e86fb c132f209 421b437e -> 3d37ca3f", + "421fc48b 424bc48b c2703b75 -> bf2562e8", + "c2490014 4097ff65 41ddffda -> 3dbd20e9", + "bf51393e 41817636 4142ec6c -> bf204705", + "41823060 41823060 41823060 -> 3ecb15f4", + "c11f8655 41c03cd5 c217e195 -> 3e8c4780", + "bfbdad7e c21ded6c c1dbdad8 -> 3f424213", + "c22d901e 420e6fe2 c01901e2 -> 3f43c67b", + "c1c44b71 c21625b8 408ed23d -> beb7f85c", + "c1b1e64d 42070cda 418e19b3 -> bca9f381", + "40200b98 c221ff47 415802e6 -> bf14b271", + "4245c3a5 c23e3c5b c18478b6 -> 3eaaaae8", + "c1d07d24 423bc16d c1d07d24 -> 3f45bba3", + "c1f1ed69 c228f6b4 414c252e -> 3ef59315", + "41dc4067 42022033 41c44067 -> 3f189496", + "41062f23 42098bc9 c1ace86f -> bea03aa6", + "c044da87 423bb257 c1b09b51 -> be53cb4b", + "c1fc4795 40cee1ad 3eee1ace -> 3eb6234f", + "c246e1ee c02e1ed8 41f23c25 -> be0c5173", + "c1a5ade4 421d290d c1cdade4 -> 3d5e4963", + "c0bdc0a4 c07b8148 c18f7029 -> bf10fe60", + "c0031290 c0031290 c0031290 -> 3ee05a50", + "c1efc584 c20fe2c2 41d83a7c -> 3d9c3f64", + "416b5282 c2152b60 419da941 -> beb7ed0c", + "416f7238 41cfb91c c1208dc8 -> 3f171acd", + "420962bf 41358afd c1e53a81 -> 3e00e9ab", + "401593f2 401593f2 c1c54d82 -> 3f4a8d0a", + "c12b2c0e 424534fd c21acb03 -> be6822e6", + "4229e0a7 c1087d64 41dbc14e -> bdab02fb", + "c17fe3a0 c253f8e8 42300718 -> 3f23b7af", + "c112b183 4207539f bf958c1a -> beaf3a80", + "3ded3800 3ded3800 3ded3800 -> bee5cda7", + "c21c0e8f 420ff171 411fc5c5 -> be6168a5", + "bd4ce000 bd4ce000 bd4ce000 -> 3e82b9c1", + "41838569 41170ad2 41fb8569 -> 3f240593", + "c215fba5 419408b7 4256045b -> 3c3dad93", + "3c9f8540 c247ec0f 425413f1 -> be3eb00b", + "c210c7d9 41e6704e 42173827 -> bd9bee88", + "41b346dd 3ed1b733 420da36e -> 3f04704b", + "c27c598e 425ba672 419f4ce4 -> bf1402b0", + "4254b1db 4220b1db c27b4e25 -> be8332e5", + "418b924a c091b6d6 c1dc6db6 -> 3ee60369", + "c2249c82 c2249c82 c2249c82 -> bebd6e1f", + "c1b437e1 4221e40f c19c37e1 -> 3e6fbebe", + "42233417 41fe682e c18197d2 -> 3f168a66", + "c23035f3 422bca0d c150d7cb -> bf38341c", + "41056ce9 c246a4c6 40cad9d1 -> bf215446", + "41081618 41081618 41081618 -> bc709d14", + "420f9d92 418f3b23 c268626e -> bdbaca65", + "41889cd8 42044e6c c0fd8ca0 -> beeaa472", + "419a514a c17b5d6c c17b5d6c -> 3f4f7c0d", + "41e0f7c8 41e0f7c8 41e0f7c8 -> 3f165bc4", + "c2872ab7 4209aa93 4241aa93 -> be5d983d", + "42110b49 c1c5e970 c1a5e970 -> 3f3b2457", + "423f83db c2347c25 41ff07b5 -> be7a25e0", + "421cc314 421cc314 421cc314 -> bf0a9dc8", + "c280f5e8 41bc2861 42561431 -> be640c2b", + "c20dc9e2 41e46c3c c1a393c4 -> bf0f9ed7", + "c1e7f348 c247f9a4 423c065c -> bf4592c1", + "c15eb9a2 c22fae68 bf6b9a20 -> bcf2caab", + "c2225674 4106a630 4231a98c -> 3e276dff", + "c2421a2f 422de5d1 4225e5d1 -> be90cad4", + "c1f95e3c 417d438b 3f5438a5 -> bd0369e9", + "c14fec50 c14fec50 c14fec50 -> bc567060", + "c22cf9eb c113e7ab 41de0c2b -> 3edd24bf", + "4265d5e1 40aeaf05 c2562a1f -> be025648", + "c24b6498 4084db43 42709b68 -> bf0a43ed", + "423b1dc4 c1e9c478 c218e23c -> 3e46ca3c", + "c1ef8dc0 3f872410 3d6481f4 -> bebaea2f", + "421fc6b1 c1b8729f 422fc6b1 -> beb0c33a", + "4218ecf2 4153b3c9 c26b130e -> bf0d26cb", + "424c354a 404354aa c19f956b -> bf0c9e1e", + "c1cf8846 419077ba 418077bb -> 3e616f89", + "c1a3ff57 c1c3ff57 425a0055 -> 3f05fb97", + "c219e6b0 42221950 41686541 -> bd816643", + "41303855 42380e15 c1a7e3d6 -> bdf4eb5d", + "bfb870ae 4108f1ea bfb870ae -> 3ea3ae40", + "404f37b5 3f9e6f6a 4113cded -> 3f2a92fe", + "c2115d0f 421ea2f1 c0cae879 -> 3f253dba", + "bfca4aef 41f35b51 c0652578 -> 3ef5ec53", + "41b2b778 41156eef c21ea444 -> 3f1a2098", + "4215aa76 4215aa76 c18cab13 -> 3d3ff1fd", + "c252919c c202919c 42756e64 -> 3ef79322", + "41c56405 c2494dfe 423ab202 -> 3f2782cc", + "421fbab9 41df7572 c2784547 -> be6e18b0", + "c11595df c15595df 421a9a89 -> bdade9b9", + "4215a576 4215a576 4215a576 -> bf1500a9", + "c2522b83 c2162b83 4275d47d -> bea62919", + "41864888 c181b778 414c9111 -> bf1d8636", + "4208be28 4208be28 4208be28 -> 3e630eaa", + "c13c3b2a c2630ecb 4258f135 -> bed23ace", + "41d5816e c1d27e92 4216c0b7 -> bf12e53b", + "3d720330 422c3c81 c10f0dfd -> be3a7f99", + "42440e8c 3f81d176 c247f174 -> bd218a91", + "c100b3eb 41b7a60a c2082cfa -> bf0a4668", + "c1fd42fb c12a85f5 41357a0b -> 3cc79e6a", + "3f84c825 41984c82 42042641 -> 3f510a19", + "40af4f00 40af4f00 40af4f00 -> 3da81a63", + "c18cf6da c1d4f6da c194f6da -> 3e967d0c", + "c2116e6f 422a9191 40691904 -> 3d8a1212", + "41b10615 c186f9eb 3f90614a -> 3e5fdd89", + "4166c912 c1dc9b76 c1849b76 -> beb32302", + "c256c622 425d39de 40539de2 -> 3de49603", + "c14b3284 3e99af84 40e99af8 -> 3e2a0de4", + "c210d227 c210d227 c210d227 -> bf3dffde", + "41fe886c c1a97794 c1997794 -> bd3dcd05", + "42500487 c197f6f3 c197f6f3 -> 3f2bb88a", + "c1d06501 41bf9aff 416f35fd -> bf14f7e2", + "41b9842d c2133de9 c1967bd3 -> befc3d51", + "c19d86ac c19d86ac c19d86ac -> 3e668e81", + "4018047e c1dcff71 41830090 -> 3e947be4", + "41413526 41e89a94 c1df656c -> bd99ba6e", + "c15465b4 c24d196d 4206e693 -> 3ee814c9", + "41808a15 c1df75ea c19775ea -> be98ffbe", + "c100580f 420be9fc 409f4fe2 -> bf021486", + "41bc93d8 c1cb6c28 421a49ec -> be589124", + "c0755e14 c22355e2 bf55784e -> 3b8da7e6", + "c23ee69b c09734d8 41ca32cb -> be66d015", + "41cb0a8b c2567aba 41061516 -> 3f1de475", + "4129a175 c1565e8b 41d4d0ba -> 3e93ad2e", + "c21599bc 41199912 c1b33377 -> 3da12c84", + "40f18c6e 40f18c6e 41c4631c -> bf1545cf", + "c1dd71cc c1dd71cc c1dd71cc -> bf003f5c", + "423f09e6 c22cf61a 411c2797 -> be40ab00", + "417cdde4 c199910e 41ce6ef2 -> 3f19f6dd", + "c208c2d0 c210c2d0 42233d30 -> 3e26b927", + "c1a2b7e9 402a40bf c1c2b7e9 -> bf1dc80e", + "c2385bfc 422ba404 bdb7f888 -> 3e90e108", + "c0c850d6 4222f5e5 c2210a1b -> 3f0504cd", + "420d1a56 c256e5aa 41246958 -> 3d5e142e", + "c1918cbe 422739a1 c218c65f -> 3de67fa8", + "c0954e4a c23ea9c9 411558db -> bbc538f3", + "c23a1a31 c1dc3462 4225e5cf -> bf01edaa", + "c1adf1d0 41920e30 41c20e30 -> bf029729", + "c253c185 41e87cf6 41d07cf6 -> bf17759d", + "42481a96 c1ffcad5 c18fcad5 -> be414b1a", + "c257434a 4102f2da 4260bcb6 -> bf19fcc3", + "c094b308 c094b308 c094b308 -> 3f4c791d", + "c1cdc2e0 418a3d20 c195c2e0 -> be6a789c", + "42264043 c01bfbd6 41a48085 -> bef2a965", + "4210fac4 4210fac4 4210fac4 -> be800215", + "c160b7ee c2142dfc c042dfba -> bed354c3" + ] + }, + { + "glsl": "vec4 cultmath_snoise_grad(vec3)", + "tolerance": "ulp-bounded, on the simplex tie set", + "cases": [ + "c23acaaa c23acaaa c23acaaa -> 401052c9 3f0f16a7 bcbff362 3e0fd123", + "c25f203d 4200dfc3 41f9bf86 -> c002a42c 3fe43930 bfc80ae3 3f28af46", + "417a38d0 417a38d0 417a38d0 -> 4021c916 c01f15f9 becc73d1 be72b3c3", + "41d8995e c217b352 3d995d5e -> 3f5ba362 403ba6d9 400dd8ac 3e1dbd57", + "c1cdab59 4280952a c236d5ad -> 3fdbe5ab 408b8779 40183995 bec6de00", + "c1df605f 41513f42 41e09fa1 -> 3ee2b2ae 3ffd7d1a 3ebd27bc becd2159", + "41046bc0 41046bc0 41046bc0 -> 3e8d739e 3fc850ad 3f84baea 3dacafd4", + "421fd4d7 c1885653 c1905653 -> bf13f661 3ffd3295 3fa13f1d 3ef60904", + "4193e077 bf03f11e 4211f03b -> bf5a2722 bff6615b bfbfe7d0 bf36b29d", + "c135363e 406b2706 3f2c9c19 -> 3f88875d 3f8e18ff bfd68db4 3ec25bf5", + "3fbad472 c02295c7 c19452b9 -> c0b172f2 3ff7d196 3fa80473 3dce4aee", + "423ab63f 40f5b1fa c0aa4e06 -> c0994cdd c002adfc c02ea8f9 bdded0ee", + "41211cec 41211cec 41211cec -> 40648992 bf9400d0 403eb853 3efc8a00", + "41b80fec c0dfc04d c1b7f014 -> 3f4a3c57 400ca9ca c0129dad 3dcd5a1d", + "c2034030 c2034030 c2034030 -> bfc5b121 3f96408e bf890e26 3f0f06e8", + "c23970b6 421e8f4a c192e16b -> 3ef895b9 c038b63a 3fe20dfd 3e6b5583", + "c161b020 422793f8 c1c0d80f -> bf79bfc1 3fa30ad2 40a6b947 3ed356a4", + "c020441e 3fbf77c4 423dfbbe -> 3f2393c8 40b84bd6 c023eac0 bc82c6fa", + "c1f07fd5 c130ffaa 40be00ac -> 3f2fbdb6 402c4d24 c074df7b bdd62088", + "c24a9048 c20a9048 42496fb8 -> bff7047b 3fa2df38 3f6247a0 bf2f6ba2", + "c2414d22 412acb75 4262b2de -> 3f2c0542 c0946cd5 c07e5e45 bd829d92", + "4124abc8 4124abc8 4124abc8 -> bf7d3ba6 3ef86dca 3f660c9e 3f1072f8", + "c1c9be73 41d6418d 412c8319 -> 4048f97f 4048f97f c03460c6 be50c78f", + "42295f25 c10a8369 c246a0db -> c0b7d205 bf221d02 4023eab4 bd16719e", + "41227e6f 41d13f38 c17d8191 -> c0cc3984 bef546a1 3c52b5d9 3d9850c7", + "41b52981 40b4a605 c1f2d67f -> bf1af97a c0b57e97 4023e8e4 3da689a2", + "c1bc8ea1 4231b8b0 419b715f -> bf760574 c0a18b55 3f1259ea 3eff09a9", + "422868d7 c18f2e51 4198d1af -> bf98e393 bfc09ac5 be701e25 bee13aa0", + "42458cb1 c24a734f c1cce69e -> 3f1530ea bf51103a bf46cbf7 be8d3595", + "c21757f4 4230a80c 41895016 -> 3f2a6072 c094dd92 c07f30ba 3ca7511e", + "c2534bdb 4112d096 4204b425 -> becb5029 401d6289 bcb2b330 3f2709ab", + "c2787f22 425780de 41a701bd -> c0be3c0e 3f410c59 bf6bae55 be91d135", + "412dfb4e c16204b2 c22c812c -> 40395b10 3feb361c 3ed2b53d bed6ee38", + "c1cbe510 424e0d78 413835df -> c0b74d90 bf2085f7 4023ea86 bd4e210d", + "c1896aa4 41be955c c1a16aa4 -> bee53a16 bfde5181 3ff0a2b7 3f2260bd", + "4175c4cf 40eb899e c20a8ecc -> 3fbd2b6b bf5b4360 3fddb876 bf0356c9", + "41de3b35 42131d9a c220e266 -> c08a1945 4052b53a bf92a3df 3e0d5300", + "42405631 c213a9cf c13ea73e -> 40718601 c0493d45 3f642778 be42cea4", + "425731a7 41ce634e c23cce59 -> bf7f5cfa 3fb604c6 bea7e7c5 bf18be56", + "4098304d 427b060a c278f9f6 -> bf30aea2 bfb18a0d bfda4980 3ca5b37d", + "c13bf1a2 c18df8d1 c1bdf8d1 -> 3e454a06 3faab43f 3e12d8ff 3ede4d67", + "40da4fa0 c1816c18 c218b60c -> 3f0d2784 3f0d2784 c0cf4861 3d762401", + "c0152670 41cd5b32 c0ca9338 -> bd78718d 40283d33 bf6cab10 be50cb98", + "41ac4a8a c25ddaba 419c4a8a -> bf464f75 4036480c c0090c92 3e7122fc", + "c1f92d69 c1f92d69 c1f92d69 -> 3f8f1c99 bee1b3d0 3f41d9d6 3f4ee9ac", + "c1b642e5 41c1bd1b c1b642e5 -> 3f38e746 3f38e746 c0bce62b be8437b4", + "411ecf07 c1a8987d c17130f9 -> beed16b8 c08631c5 3f6f9544 bf1a1b13", + "42739224 c1b8dbb8 c2386ddc -> 3f2c1b6d 40455831 c098180f bd929e67", + "c0630a75 c21230a8 424dcf58 -> 3e3c7a14 c059b44a 401b5119 bea48961", + "423da984 c0d2b3e4 c1b4acf9 -> 3fabe9d9 401fcf03 405d87f2 be479240", + "c265def6 41688427 421a210a -> 40576b48 c0935f8b bfa45ada bdaf915d", + "c20801a2 c20401a2 4217fe5e -> bf82da2f c018d9d7 3fe7dba4 3da28c2a", + "401f0a79 c060f587 418be14f -> 405ea10e c0048e10 c084dfe4 3d2a5460", + "422ec79c c2153864 c18a70c9 -> 404f2ea9 3f292231 c0a45e99 bd151acd", + "c1c1d74d c22ceba7 41fe28b3 -> bfa60e4c c0730a5f bff61026 3f0e2ae7", + "c1bb8e8d 424e38b9 c1071d1b -> 3f4158ea 3f415858 c0b94424 be8ec97c", + "4235c4a6 c1ac76b3 c2563b5a -> 3ff226bf 40710acc 4020c4d6 3e81ce88", + "421820de c17f7c88 41a841bc -> bf0f0420 c03b809b c002228b 3ecd4759", + "41f78cfc 407c67de c150e608 -> 3fcb6e71 be689ec6 c05a065d bf1a3e60", + "422ccfc6 c12cc0ea 420ccfc6 -> bf3d7ecc 4038c65d c006e892 3e700be4", + "420e7ae5 c219851b c166146d -> 40aad885 3ef531d7 c023c08e be2e20b4", + "424053f6 424053f6 424053f6 -> 3f947526 c098ce67 bea5da3e bef927ab", + "42662514 c245daec c23ddaec -> 3e3294e1 3fadc9c8 4000c557 bf1b8d41", + "415a02d5 425e80b5 c2417f4b -> 4005b7c6 3ecead0e 402b2dc3 3df42dda", + "c1ac0cc6 408fcce8 4219f99d -> 3fbad271 bf1551a7 4009423d 3f1fc671", + "c2002bc1 421bd43f c2402bc1 -> bf6b3ea5 4037aa2b c01592ea be70c4d4", + "c26180af 422a7f51 40f3fa88 -> 4018ae51 40077174 4074322a 3ed62f73", + "4131d958 4131d958 4131d958 -> 3e052188 3e0681f2 c011d54a bf4785f2", + "421ce193 c0b8f364 4200e193 -> 4046c9f4 4046c9d8 c03453fd 3e58d8b5", + "c1a73963 423c634f 41018d3c -> be2de0e4 bf810173 3bc8f9b5 3f1cd89d", + "c21d747b c229747b 42768b85 -> c093f1f4 4057b3cc bfa57414 3da5fe25", + "422e0da1 3f036817 c221f25f -> bfea2043 3ff95074 bf5b92f9 bf179153", + "42465de8 42465de8 42465de8 -> c04546f5 4063fa71 3f4b2769 3e4ffd8c", + "c2558aae 41e4eaa5 3fceaa40 -> 3f73caea c080e5f1 c059f3e5 3ec742af", + "425e4891 c265b76f bfb6edd2 -> 3f7e6459 3f384c0d 3f71d93f bef89218", + "c233c183 42841f3f c24bc183 -> c077bb48 bfad0978 bffda5ab bf09babc", + "42764950 c20db6b0 c215b6b0 -> 403266d0 3f2fa211 c08159d3 3dcc9604", + "40b75282 423aea50 c0e8ad7e -> c082b517 3fecaba9 3fad63f5 3e53b670", + "c24c92de 410db48a 425b6d22 -> c0b7a388 3ff8a412 3fa6b524 bd73bbc8", + "413d1124 3fe88920 41a68893 -> 400244c3 c0155f26 3fd5a407 be4df706", + "c1b6549d c22b2a4e 4224d5b2 -> c08b83e8 bfdbdae4 c018340b bec6f420", + "4120f008 4120f008 4120f008 -> 4077ad83 bf83014a 405087bc 3edc3bcf", + "423ea770 4246a770 c284ac48 -> 40521628 3f281cad c0a80d42 3b87a509", + "421d5cb3 c15a8d32 3eae59b1 -> bef953cc c0ccc5b5 3bbb43c7 bd4b41f7", + "c223cc65 c17f3194 41f06736 -> 3f6f4d2e c0822359 c05c4376 bec19408", + "409ffe00 409ffe00 409ffe00 -> 40045877 409a674c 403075f7 bb1a675e", + "c170afa8 c0815f50 c20c2bea -> 3ff60996 c05a954a 407b1e90 bdea6488", + "4115e543 4057950e c20286af -> bfd49c68 40364011 bf07cb8c bf18e442", + "c2382835 4233d7cb c0e141a5 -> 3fe79c1e c03553fa 3f2715b7 bf16d605", + "c1f5e848 40a85ee1 c216f424 -> beef1900 beef18fb c04a518b bf374cad", + "4155549e 4135549e 4182aa4f -> 405f30cc c005ea02 c085ea0e 39fde108", + "41318042 bff3fdf1 c079fef8 -> 3e88705c 40988a5e c022f623 be7bce51", + "41357cf3 c21ea0c4 41457cf3 -> c05ef4f1 400558f0 40857b0c 3cdc8290", + "41676cb6 c108934a 41f3b65b -> bf59afe1 bfbc0762 bfcf3e57 bf2bcf8b", + "41393b88 42264ee2 c251b11e -> 3fb70412 c03bd5ad c018eab9 3f163ada", + "42084341 41510d05 c25bbcbf -> bfae28c9 bfb29c2d bf69bb0e 3f13c0f1", + "c12cc191 c23b3064 41819f37 -> bf634fe8 c0006104 3f8f1317 3d39cc43", + "40af1a48 40af1a48 40af1a48 -> c0b36d15 bf14a543 4023e539 3dd87fc4", + "41e6d375 c2349645 c2209645 -> bf1c29e8 c0b5e1e0 4023e963 bd9b3ab0", + "42068a0c c175d7d1 c135d7d0 -> bf1d9bb4 bf1d9be0 40c8731c be2ca06c", + "40041d57 c11ef8aa c1df7c55 -> 406e0d68 bf8b97ac 40479241 3eed80b7", + "421b9677 c2106989 c1a8d312 -> bfb63828 407d0730 bda287a2 bf0ddef3", + "42136374 c2409c8c 41bec6e8 -> 405ff438 405ff438 c034a44d 3d6e0a13", + "c1c511a1 c1ed11a1 42017730 -> bf39fc17 3fd61b94 40bbe20b 3e73abb9", + "4207c02f 423fc02f c2343fd1 -> 3eb9c922 bfc22cde 4069c466 3f16a984", + "4229a7b3 c1f4b099 c1196132 -> c07f5e75 bfee0ee0 3f4d93d1 bf198848", + "41a12108 41a12108 41a12108 -> bf07c935 c005f8af 40427a80 3df1af83", + "c0b37808 40ec87f8 c1fcde02 -> 3ffce781 3f4466e0 40128b6b 3d0a997a", + "417e6bb8 417e6bb8 417e6bb8 -> 40843171 bfaf28bb 3bd2e9ca bf0af4fb", + "c1942e99 c1185d32 3ef459c2 -> befef937 bff5c156 40031999 3f20ef59", + "4211707d c11a3e0a c1dd1f04 -> 4094622a 3ff6875d 4026a3a7 3e80d524", + "41b1b20a c0326fac 41736415 -> 3fcb781d be9f4a74 3e2777fe bf4efd66", + "3f9f5936 40a7d64d c22b0536 -> c09986e5 3ff375aa 3fabff0d be32ee4b", + "419c31ed c1379c25 41ac31ed -> 3f13f3e5 c00c3635 bf07c190 3e29957f", + "4224fe59 c20701a7 41d1fcb2 -> be4c9140 3facb4aa 3ff70f32 bed63d1f", + "41ee1ec8 c214f09c 40f87b20 -> 3ff50a16 c0a104ff 3faaf23b 3e21f21f", + "c1dc4e04 c1289c07 4225d8ff -> bf1e47bc 3fc08e6c 3f9d355f 3f00a006", + "41058091 41258091 c1ed3fb8 -> bf934a5f 3ebeb548 bf429e94 bf4ea0cd", + "40e6d3b5 c25b2589 41b9b4ee -> 408823a7 3fd1ba3f 4012b795 3edacd0d", + "41adf624 41adf624 41adf624 -> bde611e0 bd1cb601 3e038041 3dcd4edd", + "428eef15 c24621d4 c24221d4 -> 40243fab 3f90b617 3fa98640 3eff74d0", + "4221d60f c18c53e2 c24229f1 -> 3f589e6f c0885cd3 c067dd81 3ea0a968", + "c24871ce c20071ce 425f8e32 -> bf419836 bf419836 40b928a2 3e8f14de", + "41cfb3b8 41cfb3b8 41cfb3b8 -> c0a7bdff c0350055 3e41a40c 3ea11c8c", + "c2798a0f 427275f1 4159d7c4 -> bdd02373 3f628cd1 3cb1b6f1 3f1f45ff", + "c1f0dd9c c1a0dd9c c121bb38 -> 4049f35e c03ceb52 3f1c6437 be61a037", + "c1d76516 42244d75 41889aea -> 4019684f 3e690704 3f0d917a bcb4a4fd", + "c1c29b78 c1fa9b78 c14536f0 -> bf1f19d6 3feb5294 40c4966d 3d604727", + "c1422a78 417dd588 418eeac4 -> c0c5064f bec03b03 3dd9cca4 be582e5f", + "41f5c1a2 420ae0d1 c1823e5e -> 40b64e5a bf57b22f 3f4ad6f9 3eb10fcb", + "c18ab573 410a951a c1a2b573 -> c0ca2372 bfdc2ea5 3b69d609 3d2d83c1", + "c22f6b01 c22f6b01 c22f6b01 -> bfc3a2fa 40410e60 bf90f89a 3e69c10c", + "42126692 42126692 42126692 -> 407ee67a bc5665d4 c020acf5 3e99b241", + "421ce8c2 41e9d183 c12c5cf9 -> bf27ebde c0033068 bfc95f51 3f112da1", + "4244e20a c24b1df6 41d9c415 -> 403985d5 c043a800 bf134a2b 3e653955", + "c24ca519 42335ae7 c1629462 -> 3f1605e4 c0cd02b8 bf94c07e bd1bc5b0", + "c1df4511 c03a288c c12e8a23 -> 404578c4 c064a1b8 bf4c5ad6 be4f6c31", + "42321e25 c22de1db 41843c4b -> c0470b69 be7dd5de bfa75abd 3d976422", + "bfbb3b4c 42162625 40b1312d -> be99aba6 bf714fe4 bf230b4d 3f3ea0ca", + "c1b6a318 c20f518c c15d462f -> bff900a4 40baadf2 bfa606af 3c1d0a3b", + "c28a0e93 4233e2dc 4247e2dc -> 3ea13555 402b8b6a 4032727f 3ecab3d5", + "c1c96066 c1b16066 c20cb034 -> 3d4e87d6 402e6eb7 3ea5d0cb bf210d81", + "c1ee493a c1ee493a c1ee493a -> bffd00f1 bf29ccfe bfc72cec 3f1f6539", + "423c93cd c1eed866 41e1279a -> 402d39dc bf0e23ca bfe7c0fb be7018eb", + "c235b891 c05b8916 c01b8916 -> bea5d46f 3f8b56de bfb3745c be0f019d", + "c1924a83 422adabf c1d24a83 -> 3fcc2603 3fcc2595 409920a6 3ed6bcd0", + "c232a0b5 c1fd416a 421d5f4b -> 4060e1f4 4060e1f4 c034a493 3d2846ac", + "c20b955b 422c6aa5 42006aa5 -> c01aa60c bec55416 be851f06 bd8b78b3", + "3ff8cc80 3f719900 c081cce0 -> c05fdfb9 c039f7d9 c0222698 beb0dfe0", + "c24616b9 c1d42d73 421de947 -> bebcbed8 bfead9e7 4009904b 3f223499", + "c1c64ae4 425cda8d c23b2573 -> 3e9b05c2 bfcf417b be3705d7 3f4e33e9", + "42171c86 42171c86 42171c86 -> 3b0c0bc2 3f863254 bf2b788b 3f164873", + "41df9f54 41d79f54 c110c158 -> 3e85372f bfd56562 be610c04 bf4e2e19", + "41704893 4180244a c247eddb -> 3f2d035d c0167bef 3e862848 bf2a32e8", + "4240cc4b 3e4c4a52 bf4ced6c -> 408cc795 bf4861aa 40701a62 3e82b079", + "418d6ca7 c1ca9359 c1aa9359 -> 405eddd8 c00520ed c0855041 bd01b4e1", + "414d5175 411d5175 c210aba2 -> bf8e40ea c01cf194 3fe0da91 3d9880ee", + "416c6b88 416c6b88 416c6b88 -> 400776f9 3d1678b2 3f2d5655 beb1e6f1", + "c112c540 c1a162a0 c208b150 -> bc9cedfc 4003ef82 40324adc 3f144df7", + "41d58a10 41ad8a10 c2493af7 -> c094b9b0 bff78f49 c0273263 be7a69b6", + "c21fc111 42403eef 42283eef -> c04058bd bf8e0527 3fa15c09 3f32b9b6", + "bed70a84 c215ae15 c1a35c2a -> 3e53f75a c09b56f8 3f20f7a4 bef1dc13", + "4218ba02 4218ba02 4218ba02 -> 3f376eac 3fc90a14 bf986d3f bf1ba274", + "c18d2939 424d6b63 c22e949d -> c0c956a9 3f20cfa0 bf8d08de be189ee8", + "c21c3076 c21c3076 c21c3076 -> c0844975 3f677f60 c0604495 3eb71e70", + "40f657b2 c1ca6a14 4256caf6 -> be777e3d 403ea154 c00fcf70 bea9d831", + "c20c2821 421bd7df 41d7afbe -> 3fd05647 c04112ba 3eee4f8a bf183824", + "42281c68 42281c68 42281c68 -> 3fdca504 bf31b95c 40be91fe 3e4e0f8d", + "421efefd c174040d 41d5fdfa -> 3f41651d 3f41651d 40653cc6 bf2ad41e", + "c11a38ce 422971cc 41c2e399 -> c067830c bfce9f7c bff6ef15 3ee337f0", + "4269ab2a c27654d6 4146aca6 -> 40237656 3fe2df99 40311398 be880f11", + "42487cdc c2038324 c2038324 -> 3efba243 40abe99c c023c70b be27ae72", + "3febfddf 420f5fef c1a14022 -> 3f188e04 c00d2f9b 3e4d95de bf2a2747", + "c22698f8 41159c21 4192ce11 -> 400d9f41 bfd98cab 3f9da3dd 3f13303f", + "40dd1ed4 c1d0b84b c1e0b84b -> 3f6d8318 3f6d8318 c0a5b78f beb869d0", + "c217ddeb c03ddeb1 425c2215 -> 3fa6873e c004bcf0 3f60f066 bf2d1587", + "c2134451 c09a2281 c1de88a0 -> c0c7eaae bfd6cba9 3d10f898 be081179", + "427a6ecc c1eb2266 c21d9134 -> 4045da41 400618c0 407e89d1 3e86f3bd", + "4101912c 4101912c 4101912c -> 3fef2043 c088a9e2 3fada502 be4d3aa2", + "416f1bcc c1e8721a c0c1c869 -> 3e4d00f9 bfce4efa 4057d0aa 3f1a68c1", + "bfd45400 bfd45400 bfd45400 -> 3f663143 bfeb202c 3f1248e5 bf2f384d", + "c1d025df c21412f0 40bf6883 -> 4003d8fa c05e55cd 4084553e bd5193c3", + "40d6a221 41a5a888 41f5a888 -> c04c13d2 bf2a27a8 40a0762f 3d51ffac", + "c14ab103 c0d56206 c1955882 -> 401c2ae7 3f94a4c6 bf5763db 3f141b9e", + "419444af c1fbbb50 41cc44af -> bf13a0c5 bf165a4e 3fc8c685 bf4d21dd", + "c1a6c93f 42409b60 c19ec93f -> 3f0e23d3 402e7369 be99480f 3e21c0b5", + "4273bd9c c2822132 414ef670 -> c05f40c3 c05f40c3 3f0ef4d0 3f06554d", + "425eb2d1 c2194d2f c2494d2f -> 3f864097 4014fb12 bf918e3e 3f18d9dd", + "4233dc77 413f71db c2042389 -> c0b0d116 bf0cb025 4023ddc1 3e049d63", + "4188541f c24bd5f0 41f0541f -> bfb3a8cf 3ee77f73 bc120676 3f503a10", + "42019299 c159b59b c22e6d67 -> 3f68fd3c c0b02c58 bf319ae4 bec485bd", + "c1fe49d1 400db178 c17c93a1 -> c0aa7b81 bef300de 4023be41 be30400d", + "c1fab43e 41cd4bc2 40f52f07 -> 3f4f4a5e bf072d63 40157608 bf34417b", + "4196efa1 c238882f 424b77d1 -> bf19469b 3f960838 be188c9e bf521670", + "c21a422f c1a4845c 425dbdd1 -> c07fd687 3fb452f0 3d6a68c0 bf0d37d8", + "c2627bae 4286c22a c1d4f75b -> bfc2118d 3f532e99 c0b39da4 bea50053", + "c187f3ea c1eff3ea 4120182b -> 3fccecce bff55146 3f408ab8 3f192291", + "40ec0dc2 421d81b8 c0d3f23e -> be93264d 404d5c90 c01de457 bea52c08", + "c13ebe6d 42205065 c11ebe6d -> 3e596a5a 4093c660 c022a333 3e84d2ae", + "c16d9d7b c1eecebe c1b6cebe -> 3ec5d3f1 3fc2faef 40371821 3f1d8b03", + "c103e181 c230f860 423b07a0 -> 409b5eeb bff3de40 bfabc17c be2f1f68", + "c13e1132 c09c2263 4083dd9d -> 3f30edae 3f30ed90 c0c04dc6 3e721259", + "c1b8ec0c c1c8ec0c c180ec0c -> 405f6c78 3fefa135 404c20d5 be4700dc", + "c20134a9 c174d2a4 c164d2a4 -> bfc6f6ef c0c15e61 3e03cf5c be805010", + "41da95ca 41052b93 bfd6a364 -> 3e29eb39 3fbbabb2 3f8084d1 3f446eb1", + "c206ce67 42093199 42013199 -> bfa62996 40087a6d bf5cc459 bf2c639b", + "4229adb3 41eb5b66 c1b4a49a -> 4027e8d0 4027e8d0 c0331921 be94bdc9", + "c1ce5182 bf4a3033 c21328c1 -> bff563cf 405a714b c07a9f25 bded9d0e", + "c18d4bc5 40aad0eb c20aa5e3 -> 3f95f3af c02ca88c 3f63e8f5 3e73d9c1", + "c18f5136 41d0aeca c1cf5136 -> be13625f c08db126 40222572 be8c65bb", + "4251ef9f 4215ef9f c26e1061 -> 3fa97ac3 bfd4717a bfbd2c51 be30d06c", + "41df6857 3f6d0aea c0a25ea3 -> bff42bac 409cc77b bfab903c be2c0dc4", + "402db957 414b6e56 c18a48d6 -> c0ba752c be6647c4 3e77bd86 be9fd9ab", + "c1a193ea 41f66c16 c1b993ea -> bfd47bce 3ddfa79f 3fc081ec 3ea873bc", + "42266905 c20596fb c20196fb -> 3fcbd4d1 3e652430 3ff4fc93 3f01cabb", + "c18de16a 40887a55 41da1e96 -> 3e9d5ba9 409c1b7e c0232bcb be701f9e", + "413c022a 3fe0114d 41ae0115 -> bdc01632 be05b5d6 bf890896 3f263a81", + "c250542b 4203abd5 418757ac -> bf245aae c09019ed 3f4e5349 bf121e22", + "bf6dd748 41e89146 40a24517 -> 3f8b2f90 bf8bb7c7 c09cf330 beed68c8", + "420b9e3e c22861c2 c22861c2 -> 404e378e 3f9e08a5 3fe23d60 be8d4f0d", + "413183a0 413183a0 413183a0 -> bef317ed bef317e1 c04b0c88 bf3701b0", + "42513853 c222c7ad 4124e14a -> bf2f9606 3ee5eb97 4017a261 be3c08bf", + "421033d0 c281e618 424c33d0 -> beff81eb bf1f2bf4 3fcabcca 3e042f68", + "41116c49 41e8b624 c1d749dc -> bf6fe628 bf6fe689 40a4a170 beba3049", + "4123be4b 4123be4b c03106d0 -> bf85b17e 3f94b3dc 40a0b93e 3ee409a4", + "41a17d38 41a17d38 41a17d38 -> bd6234b1 bf6c7400 401cd761 3e20a134", + "c206e35f 424d1ca1 3e8e506a -> 400a0fe8 bfdfae2a 3fd5b7a7 3f26de2d", + "c2139432 c2139432 c2139432 -> 3f2089a2 c0778c6e 3f803b42 bf0d5366", + "c0cd9e79 c106cf3d 42164c31 -> c07c9fa3 404c5f28 bf78d5cc be3559b4", + "41c100e2 40e40386 c22b7f8f -> 3ed7dd22 c02b0424 3fcad2e0 bf2d4e8a", + "42230ced c04f3127 4098676c -> c0626452 3f95e344 c03cb9d0 3effb025", + "c22b6037 42289fc9 41d13f92 -> 3ea908be 402fbe9a 3f13ad5c 3f1861cc", + "c1226b75 c1226b75 41d6ca46 -> bff8d9d7 40b960f3 bfa65223 3d2304b9", + "400b6327 41996c65 421cb632 -> befc6f63 3ff83926 be2f5ac8 bf283133", + "c1062ade 41bcea91 42167548 -> bf2a0de7 c023a9d4 4065ed25 3ddec8f2", + "c1cff936 41c806ca 418006ca -> c0bab1ea 3ff9012a 3fa605be bc0cd7af", + "c1e3242d c106485a 42626de9 -> 400c9250 3e00ffb4 3f24ce7b 3f4721f0", + "4182f92c c21e836a c19d06d4 -> c033ebfa c0a70c98 3e4cc8d1 bea57a20", + "41800c7e c1bff382 41b00c7e -> 3e2de8a4 3fc164e6 c0344986 3e0bfdd1", + "c23e7c5e 422983a2 c159f178 -> 3efa0ae3 40aba62c c023c57f 3e294e21", + "42157598 3faeb310 c15a299e -> bf03b9ea bf03b80b 3fcc22d9 bf4e57a7", + "c2107687 420f8979 c2387687 -> 3feed40b 3f4e600f 3e769654 bef61d79", + "bee9463b c20dd28c 420a2d74 -> c0552489 408ed5a0 3f9ba948 3dec2fe2", + "42401820 c18fcfc0 40a0c0ff -> bf2981fb 40172dad c022cd13 bea270c8", + "411a4518 411a4518 411a4518 -> bfaf3d3e bfb128c5 401b29f4 bebbea12", + "c1af9776 42483445 40434455 -> 3ef824a6 bf73200b 3f2b14d5 be521161", + "40f91788 40f91788 40f91788 -> 401966d2 3ef494ea 4027a253 bcca160f", + "416f44db 40de89b6 c170bb25 -> 4036c56c c0333bce bee2b43f be695215", + "c02288c7 4221d773 c256288d -> bfdddc0e 403ae0e3 bf10a541 3f175582", + "410ad0f1 423ab43c c2654bc4 -> 3f2233c8 40b7d965 c023eaaf 3d12b808", + "c1ed68d2 bfd68d20 4182972e -> 3fcb2b83 c009f5a0 bf9d6643 3f127fc9", + "4257e7fd 414f9ff4 c2441803 -> 400299cb c05dd0b2 408360db bd8437c7", + "c2160c0f c0b06075 c1ac181d -> bf213218 c0b78598 4023ea9d 3d38aa90", + "414f9c31 426fe70d c26c18f3 -> 3fd9032a 3cb7522e bf9d1762 beb0b6cb", + "4256e995 c229166b c225166b -> c03e87af 404ed03a 3f250ae5 be5f05f6", + "40b5fd99 4206bfb4 41a57f66 -> 4007362a bf7b6b1a bf118d1e 3f2d6b64" + ] } ] }