{"ScriptPreparationCode":"const BIT_NOISE1 = 0xB5297A4D;\r\nconst BIT_NOISE2 = 0x68E31DA4;\r\nconst BIT_NOISE3 = 0x1B56C4E9;\r\nconst CAP = 1 \u003C\u003C 32;\r\n\r\nfunction squirrel(x, seed) {\r\n let mangled = x;\r\n mangled *= BIT_NOISE1;\r\n mangled \u002B= seed;\r\n mangled ^= (mangled \u003E\u003E 8);\r\n mangled \u002B= BIT_NOISE2;\r\n mangled ^= (mangled \u003C\u003C 8);\r\n mangled *= BIT_NOISE3;\r\n mangled ^= (mangled \u003E\u003E 8);\r\n return mangled;\r\n}\r\n\r\nfunction slow(x) {\r\n let a = squirrel(x, 4);\r\n return a % CAP;\r\n}\r\n\r\nfunction fast(x) {\r\n let a = squirrel(x, 4);\r\n return a \u0026 (CAP - 1);\r\n}","TestCases":[{"Name":"modulo","Code":"let a = 0\r\nfor (var t=0; t \u003C 1; t\u002B\u002B) {\r\n a \u002B= slow(t\u002B1);\r\n}","IsDeferred":false},{"Name":"bit logic","Code":"let a = 0\r\nfor (var t=0; t \u003C 1; t\u002B\u002B) {\r\n a \u002B= fast(t\u002B1);\r\n}","IsDeferred":false}]}