{"ScriptPreparationCode":"let s10MB = \u00220123456789\u0022.repeat(1000*1000);\r\nvar strings10MB = Array.from(Array(20)).map(o=\u003Es10MB \u002B String.fromCharCode(32\u002B~~(Math.random()*96)));\r\n\r\nfunction hashString(input) {\r\n var encoder = new TextEncoder();\r\n return crypto.subtle.digest(\u0027SHA-1\u0027, encoder.encode(input)).then(function (hashBuffer) {\r\n var hashArray = Array.from(new Uint8Array(hashBuffer));\r\n return hashArray.map(byte =\u003E byte.toString(16).padStart(2, \u00270\u0027)).join(\u0027\u0027);\r\n });\r\n}","TestCases":[{"Name":"===","Code":"const s1 = strings10MB[~~(strings10MB.length*Math.random())];\r\nconst s2 = strings10MB[~~(strings10MB.length*Math.random())];\r\nconst b = s1 === s2;","IsDeferred":false},{"Name":"SHA-1","Code":"const s1 = strings10MB[~~(strings10MB.length*Math.random())];\r\nconst s2 = strings10MB[~~(strings10MB.length*Math.random())];\r\n\r\nconst hash1 = hashString(s1);\r\nconst hash2 = hashString(s2);\r\n\r\nconst b = hash1 === hash2;","IsDeferred":false}]}