https://gitlab.com/tezos/tezos
Tip revision: ba0ea4833dadc3a907cb00cee4c32a20a4ede7ba authored by martoon on 24 October 2023, 08:11:46 UTC
MIR: fixup! MIR: Add a log function for debug purposes
MIR: fixup! MIR: Add a log function for debug purposes
Tip revision: ba0ea48
test_vector_pedersen_hash.ml
(*****************************************************************************)
(* *)
(* Copyright (c) 2021 Danny Willems <be.danny.willems@gmail.com> *)
(* Copyright (c) 2023 Nomadic Labs, <contact@nomadic-labs.com> *)
(* *)
(* Permission is hereby granted, free of charge, to any person obtaining a *)
(* copy of this software and associated documentation files (the "Software"),*)
(* to deal in the Software without restriction, including without limitation *)
(* the rights to use, copy, modify, merge, publish, distribute, sublicense, *)
(* and/or sell copies of the Software, and to permit persons to whom the *)
(* Software is furnished to do so, subject to the following conditions: *)
(* *)
(* The above copyright notice and this permission notice shall be included *)
(* in all copies or substantial portions of the Software. *)
(* *)
(* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR*)
(* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, *)
(* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL *)
(* THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER*)
(* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING *)
(* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER *)
(* DEALINGS IN THE SOFTWARE. *)
(* *)
(*****************************************************************************)
(** Testing
-------
Component: lib_mec
Invocation: dune exec src/lib_mec/test/main.exe \
-- --file test_vector_pedersen_hash.ml
Subject: Test lib mec
*)
(* Test vectors from
https://github.com/zcash/librustzcash/blob/de1345a1c2f10b0843ab1f1ea6463b2330fdc673/zcash_primitives/src/test_vectors/pedersen_hash_vectors.rs *)
let vectors =
[
( [true; true; true; true; true; true],
( "0x06b1187c11ca4fb4383b2e0d0dbbde3ad3617338b5029187ec65a5eaed5e4d0b",
"0x3ce70f536652f0dea496393a1e55c4e08b9d55508e16d11e5db40d4810cbc982" )
);
( [true; true; true; true; true; true; false],
( "0x2fc3bc454c337f71d4f04f86304262fcbfc9ecd808716b92fc42cbe6827f7f1a",
"0x46d0d25bf1a654eedc6a9b1e5af398925113959feac31b7a2c036ff9b9ec0638" )
);
( [true; true; true; true; true; true; true],
( "0x4f8ce0e0a9e674b3ab9606a7d7aefba386e81583d81918127814cde41d209d97",
"0x312b5ab93b14c9b9af334fe1fe3c50fffb53fbd074fa40ca600febde7c97e346" )
);
( [true; true; true; true; true; true; true; false; false],
( "0x4f8ce0e0a9e674b3ab9606a7d7aefba386e81583d81918127814cde41d209d97",
"0x312b5ab93b14c9b9af334fe1fe3c50fffb53fbd074fa40ca600febde7c97e346" )
);
( [
true;
true;
true;
true;
true;
true;
true;
false;
true;
true;
false;
true;
false;
false;
false;
false;
true;
false;
false;
false;
false;
false;
true;
true;
false;
false;
true;
false;
false;
false;
false;
false;
false;
false;
true;
false;
true;
true;
true;
false;
true;
false;
true;
true;
true;
false;
true;
false;
true;
true;
false;
false;
false;
false;
false;
true;
false;
true;
true;
true;
false;
true;
true;
true;
false;
true;
false;
false;
false;
true;
false;
false;
true;
true;
true;
false;
false;
true;
false;
true;
true;
false;
true;
true;
false;
false;
true;
false;
false;
false;
false;
false;
false;
false;
true;
true;
false;
false;
false;
false;
false;
false;
false;
false;
true;
true;
false;
true;
true;
true;
true;
true;
true;
true;
false;
true;
false;
false;
true;
true;
false;
false;
false;
true;
true;
true;
true;
false;
true;
false;
false;
false;
true;
true;
false;
false;
true;
false;
true;
false;
true;
true;
false;
true;
true;
false;
true;
true;
false;
true;
true;
true;
true;
true;
false;
true;
false;
false;
false;
false;
false;
true;
false;
true;
true;
true;
false;
true;
false;
true;
true;
true;
true;
false;
true;
false;
true;
false;
false;
false;
false;
true;
false;
false;
false;
false;
],
( "0x599ab788360ae8c6d5bb7618aec37056d6227408d857fdc394078a3d7afdfe0f",
"0x4320c373da670e28d168f4ffd72b43208e8c815f40841682c57a3ee1d005a527" )
);
( [
true;
true;
true;
true;
true;
true;
true;
false;
false;
false;
false;
false;
true;
true;
true;
true;
false;
true;
true;
true;
false;
false;
false;
true;
true;
true;
false;
false;
false;
false;
true;
false;
false;
false;
false;
true;
false;
false;
true;
true;
true;
false;
true;
false;
true;
true;
false;
true;
false;
false;
false;
true;
true;
false;
true;
false;
false;
false;
false;
true;
false;
false;
false;
false;
false;
false;
true;
false;
true;
false;
false;
false;
true;
false;
true;
true;
true;
true;
true;
false;
true;
true;
true;
false;
true;
false;
true;
true;
true;
false;
false;
true;
false;
false;
true;
true;
false;
true;
false;
false;
true;
true;
false;
true;
true;
true;
false;
false;
false;
false;
true;
true;
true;
false;
true;
true;
false;
false;
true;
true;
false;
false;
true;
false;
true;
false;
false;
true;
false;
true;
true;
true;
true;
true;
true;
true;
true;
true;
false;
false;
false;
false;
true;
false;
true;
true;
true;
false;
true;
false;
false;
true;
true;
true;
true;
true;
false;
false;
true;
false;
true;
false;
true;
false;
false;
true;
true;
false;
true;
false;
false;
false;
true;
false;
true;
false;
false;
true;
false;
true;
false;
true;
false;
true;
false;
true;
false;
false;
false;
],
( "0x2da510317620f5dfdce1f31db6019f947eedcf02ff2972cff597a5c3ad21f5dd",
"0x198789969c0c33e6c359b9da4a51771f4d50863f36beef90436944fe568399f2" )
);
( [
true;
true;
true;
true;
true;
true;
true;
false;
true;
false;
false;
false;
true;
true;
false;
true;
false;
false;
false;
true;
false;
false;
false;
true;
false;
false;
false;
false;
false;
false;
true;
true;
false;
false;
false;
false;
false;
true;
true;
true;
true;
true;
false;
false;
false;
false;
true;
true;
true;
false;
false;
false;
true;
true;
true;
false;
true;
true;
false;
false;
true;
true;
true;
true;
true;
false;
false;
true;
false;
true;
false;
true;
false;
false;
false;
false;
true;
false;
true;
true;
false;
true;
true;
false;
false;
true;
true;
true;
true;
true;
false;
true;
false;
false;
false;
true;
false;
true;
false;
true;
false;
false;
false;
false;
true;
true;
false;
false;
false;
false;
false;
false;
false;
false;
true;
true;
true;
false;
false;
true;
false;
true;
true;
false;
false;
false;
false;
true;
true;
false;
false;
true;
false;
false;
true;
false;
false;
true;
false;
false;
false;
false;
false;
false;
true;
false;
true;
true;
false;
true;
true;
true;
true;
true;
false;
true;
true;
true;
true;
false;
true;
true;
false;
false;
false;
true;
true;
false;
false;
true;
true;
true;
true;
false;
false;
false;
false;
true;
false;
true;
true;
true;
true;
true;
false;
false;
false;
false;
true;
true;
],
( "0x601247c7e640992d193dfb51df6ed93446687a7f2bcd0e4a598e6feb1ef20c40",
"0x371931733b73e7b95c2cad55a6cebd15c83619f697c64283e54e5ef61442a743" )
);
( [
true;
true;
true;
true;
true;
true;
true;
true;
false;
false;
true;
false;
false;
true;
false;
false;
true;
false;
true;
false;
false;
false;
false;
false;
false;
true;
true;
false;
false;
true;
false;
true;
true;
true;
true;
false;
true;
false;
true;
true;
false;
false;
true;
true;
true;
false;
false;
false;
false;
true;
true;
false;
false;
true;
false;
false;
true;
true;
true;
false;
false;
true;
false;
false;
true;
true;
true;
false;
true;
true;
true;
false;
true;
true;
false;
true;
false;
false;
false;
false;
false;
true;
true;
true;
false;
true;
true;
true;
true;
true;
false;
false;
true;
true;
true;
true;
true;
true;
false;
false;
false;
true;
true;
false;
true;
true;
false;
false;
true;
false;
true;
false;
true;
true;
true;
false;
true;
false;
false;
false;
false;
false;
true;
false;
false;
true;
true;
true;
false;
false;
false;
true;
false;
true;
true;
true;
false;
false;
false;
true;
true;
false;
true;
true;
true;
false;
false;
false;
false;
false;
true;
true;
false;
true;
false;
false;
false;
false;
false;
true;
true;
true;
true;
false;
true;
false;
true;
true;
false;
false;
false;
true;
false;
false;
false;
false;
true;
true;
false;
true;
false;
true;
false;
true;
true;
true;
true;
true;
false;
false;
false;
true;
false;
true;
false;
true;
true;
true;
false;
false;
true;
false;
false;
true;
true;
false;
false;
false;
true;
true;
false;
false;
true;
true;
false;
true;
false;
true;
true;
false;
false;
true;
false;
false;
true;
true;
true;
true;
false;
true;
true;
true;
true;
false;
false;
true;
true;
true;
false;
false;
false;
true;
false;
true;
false;
false;
false;
true;
false;
false;
true;
false;
false;
false;
true;
false;
false;
false;
false;
true;
true;
false;
false;
false;
false;
false;
false;
false;
false;
true;
false;
true;
true;
true;
false;
true;
true;
false;
false;
false;
true;
false;
false;
false;
true;
true;
false;
true;
true;
false;
false;
true;
false;
false;
false;
false;
true;
false;
true;
false;
false;
true;
false;
true;
false;
false;
true;
false;
true;
false;
true;
true;
false;
true;
true;
false;
false;
true;
false;
true;
true;
true;
true;
true;
false;
false;
false;
false;
true;
false;
false;
false;
true;
false;
false;
false;
false;
false;
false;
false;
false;
true;
false;
true;
false;
true;
true;
true;
true;
false;
false;
true;
false;
true;
true;
true;
true;
false;
true;
false;
true;
true;
true;
false;
true;
true;
false;
true;
false;
true;
true;
true;
true;
false;
true;
false;
false;
true;
true;
false;
false;
false;
true;
false;
false;
true;
true;
false;
true;
true;
true;
false;
false;
false;
false;
false;
true;
true;
true;
false;
false;
true;
false;
true;
false;
true;
false;
false;
false;
true;
false;
false;
true;
true;
true;
false;
true;
true;
true;
true;
true;
false;
false;
true;
false;
false;
false;
false;
false;
true;
false;
false;
false;
false;
true;
false;
true;
true;
false;
true;
false;
true;
false;
true;
false;
true;
true;
false;
false;
false;
true;
true;
false;
false;
true;
false;
true;
true;
true;
false;
false;
true;
false;
false;
false;
true;
false;
false;
false;
true;
true;
true;
true;
true;
false;
true;
false;
false;
false;
false;
true;
true;
true;
false;
true;
true;
true;
true;
true;
true;
true;
false;
true;
true;
true;
true;
false;
true;
false;
false;
false;
false;
true;
false;
true;
false;
false;
true;
false;
false;
false;
true;
true;
false;
false;
true;
false;
false;
false;
true;
true;
false;
false;
true;
false;
false;
true;
true;
false;
true;
false;
true;
false;
false;
false;
true;
false;
true;
true;
false;
true;
false;
false;
false;
true;
true;
true;
false;
true;
false;
false;
true;
true;
false;
false;
true;
false;
false;
false;
true;
false;
false;
false;
false;
false;
false;
true;
false;
true;
true;
false;
true;
true;
false;
true;
false;
true;
false;
false;
false;
true;
false;
true;
false;
true;
false;
true;
true;
true;
false;
false;
false;
true;
false;
false;
false;
true;
false;
false;
false;
false;
true;
false;
true;
true;
false;
false;
true;
true;
false;
true;
false;
true;
true;
false;
true;
true;
true;
true;
false;
true;
false;
true;
false;
false;
true;
true;
true;
true;
false;
false;
false;
true;
false;
true;
true;
true;
true;
true;
true;
false;
true;
false;
true;
false;
false;
true;
true;
true;
true;
true;
true;
false;
true;
false;
true;
true;
true;
true;
false;
true;
true;
false;
true;
false;
true;
false;
true;
false;
false;
true;
false;
false;
false;
true;
false;
true;
false;
true;
true;
false;
false;
false;
true;
true;
true;
true;
true;
false;
true;
false;
true;
false;
false;
true;
false;
false;
false;
true;
false;
true;
true;
false;
true;
false;
false;
false;
false;
false;
true;
false;
false;
true;
false;
true;
false;
false;
true;
false;
false;
false;
true;
true;
false;
true;
false;
true;
true;
true;
true;
false;
false;
true;
true;
false;
true;
false;
false;
true;
false;
false;
false;
false;
false;
false;
true;
false;
false;
false;
false;
false;
false;
false;
true;
true;
true;
],
( "0x314192ecb1f2d8806a8108704c875a25d9fb7e444f9f373919adedebe8f2ae27",
"0x6b12b32f1372ad574799dee9eb591d961b704bf611f55fcc71f7e82cd3330b74" )
);
( [
true;
true;
true;
true;
true;
true;
true;
true;
false;
false;
true;
true;
false;
true;
false;
true;
true;
true;
false;
true;
false;
true;
true;
true;
false;
false;
true;
false;
false;
true;
true;
true;
false;
true;
false;
false;
false;
false;
false;
false;
false;
true;
false;
true;
false;
true;
false;
true;
true;
false;
false;
false;
false;
true;
true;
false;
true;
true;
true;
true;
false;
false;
true;
true;
true;
false;
false;
false;
false;
true;
true;
false;
true;
true;
false;
false;
true;
false;
true;
false;
true;
true;
false;
true;
true;
false;
false;
true;
false;
false;
true;
false;
false;
false;
true;
false;
false;
false;
true;
true;
true;
false;
true;
false;
true;
true;
false;
false;
true;
false;
true;
true;
false;
false;
false;
false;
true;
true;
true;
true;
false;
true;
false;
false;
true;
false;
true;
false;
false;
true;
false;
true;
false;
false;
false;
false;
true;
false;
false;
true;
false;
true;
true;
false;
false;
false;
true;
true;
true;
true;
false;
false;
true;
true;
true;
false;
false;
true;
true;
true;
false;
true;
false;
true;
true;
false;
true;
false;
false;
true;
true;
false;
true;
true;
false;
false;
false;
true;
true;
false;
false;
true;
true;
false;
false;
true;
false;
true;
true;
true;
false;
true;
false;
true;
true;
false;
false;
true;
true;
true;
true;
false;
false;
false;
false;
true;
false;
true;
true;
false;
true;
true;
false;
true;
false;
false;
true;
false;
false;
true;
true;
false;
true;
false;
true;
false;
true;
true;
true;
false;
true;
true;
true;
false;
true;
false;
true;
true;
false;
false;
false;
true;
false;
true;
false;
true;
true;
true;
false;
true;
false;
true;
true;
true;
true;
true;
false;
true;
true;
true;
true;
true;
false;
false;
false;
true;
true;
false;
true;
true;
false;
false;
true;
false;
false;
false;
false;
false;
true;
false;
true;
false;
false;
false;
true;
false;
false;
false;
false;
true;
false;
false;
false;
true;
false;
false;
false;
true;
true;
false;
true;
true;
true;
false;
true;
true;
false;
false;
true;
false;
true;
true;
true;
true;
true;
false;
true;
true;
false;
false;
false;
true;
true;
true;
true;
true;
true;
true;
true;
false;
false;
false;
true;
false;
true;
false;
true;
true;
false;
false;
true;
false;
false;
false;
true;
true;
true;
false;
false;
true;
true;
false;
true;
false;
false;
false;
true;
true;
false;
true;
false;
true;
false;
true;
true;
true;
false;
true;
true;
false;
false;
true;
false;
true;
false;
true;
true;
false;
false;
false;
true;
true;
true;
true;
true;
false;
true;
false;
true;
false;
true;
false;
true;
true;
true;
true;
false;
true;
false;
true;
false;
true;
true;
true;
true;
true;
false;
false;
false;
false;
true;
false;
true;
true;
false;
true;
true;
false;
false;
true;
true;
false;
false;
false;
false;
true;
true;
false;
false;
false;
false;
false;
false;
true;
true;
false;
false;
true;
false;
false;
true;
false;
false;
false;
true;
true;
false;
false;
true;
true;
false;
false;
true;
true;
false;
false;
false;
true;
false;
false;
true;
true;
false;
true;
false;
false;
true;
false;
false;
true;
false;
true;
false;
false;
false;
true;
false;
true;
false;
true;
false;
false;
false;
true;
true;
true;
true;
false;
true;
false;
true;
false;
true;
false;
false;
false;
true;
false;
true;
true;
true;
false;
false;
false;
true;
true;
true;
true;
true;
false;
true;
false;
true;
false;
true;
false;
false;
true;
false;
true;
false;
true;
false;
true;
false;
true;
true;
true;
false;
false;
true;
false;
false;
false;
true;
true;
true;
true;
true;
false;
true;
false;
true;
false;
true;
false;
true;
false;
false;
false;
false;
true;
false;
true;
true;
false;
true;
true;
true;
false;
false;
true;
false;
true;
true;
true;
true;
false;
true;
true;
false;
true;
true;
false;
false;
false;
true;
false;
false;
false;
false;
false;
false;
true;
false;
false;
false;
true;
false;
false;
true;
true;
false;
true;
true;
true;
true;
false;
true;
false;
false;
false;
true;
true;
false;
false;
true;
false;
true;
true;
false;
true;
true;
false;
false;
true;
false;
true;
true;
true;
false;
false;
false;
true;
false;
true;
false;
true;
true;
false;
true;
true;
true;
true;
true;
false;
false;
false;
false;
false;
false;
true;
false;
true;
false;
true;
false;
true;
true;
false;
true;
true;
false;
false;
false;
true;
false;
false;
true;
true;
true;
true;
true;
true;
false;
true;
false;
true;
false;
false;
true;
true;
false;
true;
false;
false;
false;
false;
true;
true;
false;
true;
true;
true;
false;
true;
false;
true;
false;
true;
false;
false;
false;
false;
false;
true;
false;
true;
false;
false;
true;
true;
false;
false;
true;
true;
false;
false;
false;
true;
false;
false;
false;
false;
true;
true;
true;
false;
true;
false;
true;
true;
false;
false;
false;
false;
true;
true;
true;
true;
false;
true;
false;
true;
true;
true;
true;
true;
false;
false;
true;
false;
true;
false;
false;
false;
false;
true;
false;
true;
false;
true;
false;
true;
true;
true;
false;
],
( "0x0666c2bce7f362a2b807d212e9a577f116891a932affd7addec39fbf372c494e",
"0x6758bccfaf2e47c07756b96edea23aa8d10c33b38220bd1c411af612eeec18ab" )
);
( [
true;
true;
true;
true;
true;
true;
true;
false;
false;
false;
false;
false;
false;
true;
false;
true;
true;
false;
false;
true;
false;
false;
true;
false;
false;
false;
false;
true;
true;
false;
false;
true;
false;
true;
true;
true;
false;
true;
true;
false;
true;
false;
false;
false;
false;
false;
false;
true;
false;
false;
false;
true;
false;
true;
true;
false;
false;
false;
false;
false;
true;
true;
false;
false;
true;
false;
true;
true;
true;
false;
true;
false;
true;
true;
true;
false;
true;
false;
false;
true;
true;
false;
false;
true;
true;
true;
false;
true;
true;
false;
false;
false;
false;
true;
true;
true;
false;
false;
true;
true;
false;
false;
false;
false;
false;
false;
true;
true;
false;
false;
true;
true;
false;
true;
false;
true;
false;
false;
true;
false;
false;
false;
false;
false;
true;
true;
true;
true;
true;
false;
false;
false;
false;
true;
true;
false;
false;
true;
false;
true;
false;
false;
false;
false;
true;
true;
false;
false;
true;
true;
true;
false;
true;
false;
false;
true;
true;
false;
false;
false;
true;
false;
false;
false;
true;
true;
false;
false;
true;
false;
true;
false;
false;
false;
true;
false;
true;
false;
false;
true;
false;
true;
true;
false;
false;
true;
false;
false;
true;
true;
true;
false;
true;
false;
false;
true;
true;
true;
false;
true;
true;
false;
true;
false;
true;
true;
false;
false;
true;
true;
true;
true;
false;
false;
false;
false;
true;
true;
false;
true;
false;
false;
false;
false;
true;
false;
true;
true;
true;
false;
false;
true;
true;
true;
true;
true;
false;
false;
false;
true;
false;
true;
true;
true;
false;
true;
true;
false;
false;
false;
false;
false;
true;
false;
false;
false;
false;
true;
false;
true;
true;
true;
true;
false;
true;
true;
false;
true;
true;
true;
true;
false;
true;
true;
false;
false;
false;
false;
false;
false;
false;
false;
true;
true;
false;
true;
false;
false;
false;
false;
false;
false;
false;
false;
true;
true;
false;
false;
false;
true;
false;
false;
true;
true;
false;
false;
false;
true;
false;
false;
false;
true;
false;
false;
false;
true;
false;
false;
false;
false;
false;
false;
false;
false;
false;
false;
true;
false;
true;
true;
true;
true;
true;
true;
true;
true;
false;
true;
true;
false;
false;
false;
false;
false;
false;
true;
false;
false;
false;
true;
true;
true;
true;
true;
false;
true;
false;
false;
false;
false;
false;
false;
false;
false;
true;
false;
true;
true;
true;
true;
true;
true;
false;
true;
false;
false;
true;
true;
true;
true;
false;
true;
false;
true;
false;
false;
false;
false;
false;
true;
false;
true;
true;
true;
true;
true;
true;
false;
true;
true;
false;
false;
false;
false;
true;
true;
false;
false;
false;
true;
false;
false;
false;
false;
false;
true;
true;
true;
true;
true;
false;
true;
false;
false;
false;
false;
false;
true;
true;
false;
true;
false;
true;
false;
true;
true;
false;
true;
false;
false;
true;
false;
false;
false;
true;
false;
true;
true;
false;
true;
false;
false;
true;
false;
false;
false;
false;
true;
false;
false;
true;
true;
true;
false;
false;
true;
true;
false;
true;
true;
false;
true;
true;
false;
false;
false;
false;
true;
false;
false;
false;
false;
true;
true;
true;
true;
false;
true;
false;
true;
true;
true;
false;
true;
true;
false;
true;
true;
false;
true;
false;
true;
true;
false;
false;
false;
false;
true;
false;
true;
true;
false;
true;
false;
false;
true;
false;
true;
false;
false;
true;
true;
false;
true;
true;
true;
true;
true;
true;
true;
true;
false;
true;
true;
false;
false;
true;
true;
false;
false;
true;
false;
false;
true;
false;
true;
true;
true;
false;
false;
false;
false;
true;
true;
false;
false;
true;
false;
false;
false;
false;
false;
true;
true;
true;
false;
true;
false;
true;
false;
false;
false;
false;
true;
false;
false;
false;
true;
false;
true;
false;
true;
true;
true;
false;
true;
false;
false;
false;
true;
false;
false;
false;
false;
false;
true;
true;
false;
true;
false;
false;
false;
false;
true;
false;
true;
false;
true;
false;
true;
false;
true;
false;
true;
true;
true;
false;
true;
true;
false;
true;
false;
true;
false;
false;
true;
false;
false;
true;
true;
true;
false;
true;
false;
false;
false;
true;
true;
false;
true;
true;
false;
false;
true;
false;
false;
false;
true;
true;
false;
true;
false;
true;
true;
false;
true;
true;
true;
false;
true;
true;
false;
true;
true;
false;
true;
false;
false;
true;
true;
false;
true;
true;
true;
false;
false;
false;
true;
false;
true;
true;
true;
true;
false;
false;
true;
false;
false;
true;
true;
false;
false;
true;
true;
false;
true;
true;
false;
false;
true;
false;
true;
true;
false;
false;
true;
true;
true;
false;
true;
true;
true;
false;
true;
false;
true;
false;
false;
true;
true;
true;
true;
true;
true;
true;
true;
true;
false;
true;
false;
true;
false;
false;
false;
true;
true;
true;
true;
true;
false;
true;
false;
true;
true;
true;
false;
true;
true;
false;
false;
false;
true;
true;
false;
false;
true;
true;
true;
true;
false;
false;
false;
false;
false;
false;
false;
false;
true;
true;
true;
false;
true;
true;
false;
true;
true;
true;
true;
false;
true;
true;
false;
true;
true;
true;
false;
true;
true;
true;
false;
true;
true;
true;
true;
false;
false;
true;
true;
true;
false;
true;
true;
true;
false;
false;
true;
true;
true;
true;
false;
true;
false;
true;
false;
false;
true;
false;
true;
true;
false;
true;
false;
true;
true;
false;
true;
false;
false;
false;
false;
true;
false;
true;
true;
false;
true;
false;
false;
true;
false;
true;
true;
false;
true;
false;
false;
false;
false;
false;
false;
true;
false;
false;
false;
false;
false;
false;
false;
true;
true;
true;
false;
false;
true;
true;
false;
true;
false;
true;
true;
true;
true;
true;
false;
true;
false;
true;
true;
false;
false;
true;
true;
false;
false;
true;
false;
true;
true;
true;
true;
false;
true;
true;
true;
true;
false;
false;
false;
false;
false;
false;
false;
true;
true;
true;
false;
false;
false;
true;
true;
true;
false;
true;
true;
false;
false;
true;
true;
false;
true;
false;
false;
true;
false;
true;
false;
true;
false;
true;
false;
false;
true;
false;
true;
false;
true;
true;
true;
false;
true;
true;
false;
false;
true;
true;
],
( "0x130afe02b99375484efb0998f5331d2178e1d00e803049bb0769099420624f5f",
"0x5e2fc6970554ffe358652aa7968ac4fcf3de0c830e6ea492e01a38fafb68cd71" )
);
( [
true;
true;
true;
true;
true;
true;
false;
true;
true;
false;
false;
true;
true;
false;
true;
false;
false;
true;
true;
false;
true;
true;
false;
false;
true;
true;
true;
false;
true;
true;
false;
true;
true;
false;
true;
false;
false;
false;
true;
true;
false;
false;
true;
true;
true;
true;
false;
true;
true;
false;
true;
false;
false;
true;
false;
true;
false;
true;
true;
true;
false;
false;
false;
false;
true;
false;
true;
false;
true;
true;
true;
false;
false;
true;
true;
false;
false;
false;
false;
false;
false;
true;
false;
false;
true;
false;
true;
false;
true;
false;
true;
true;
false;
false;
false;
true;
false;
false;
false;
true;
false;
false;
true;
true;
false;
true;
false;
false;
false;
true;
true;
false;
false;
true;
false;
true;
false;
true;
true;
true;
true;
true;
true;
false;
false;
true;
false;
true;
true;
true;
true;
false;
true;
true;
false;
false;
false;
true;
false;
false;
true;
true;
true;
true;
false;
false;
true;
false;
true;
false;
true;
false;
false;
false;
true;
false;
false;
false;
false;
false;
false;
false;
false;
true;
true;
true;
false;
true;
false;
false;
true;
false;
false;
true;
true;
true;
true;
true;
false;
true;
false;
true;
false;
true;
true;
true;
true;
false;
true;
true;
false;
false;
true;
false;
false;
true;
false;
false;
false;
false;
true;
true;
true;
false;
true;
true;
false;
true;
false;
true;
true;
true;
false;
false;
false;
false;
true;
true;
false;
false;
true;
false;
true;
false;
true;
false;
false;
true;
true;
false;
false;
false;
true;
false;
true;
false;
true;
false;
true;
false;
false;
false;
false;
true;
false;
true;
true;
false;
false;
true;
false;
false;
false;
true;
false;
false;
false;
true;
false;
false;
true;
true;
true;
false;
false;
true;
false;
true;
false;
false;
false;
false;
true;
false;
true;
false;
true;
true;
true;
true;
true;
false;
true;
true;
false;
false;
true;
true;
false;
false;
false;
true;
false;
false;
false;
false;
false;
false;
false;
false;
true;
false;
true;
false;
true;
true;
false;
false;
true;
true;
true;
true;
true;
false;
false;
false;
false;
false;
false;
false;
true;
true;
false;
true;
true;
false;
false;
false;
false;
true;
false;
false;
false;
false;
true;
true;
true;
false;
false;
false;
true;
false;
false;
true;
false;
false;
false;
false;
false;
true;
true;
false;
true;
false;
true;
false;
false;
false;
false;
false;
true;
true;
false;
false;
false;
true;
true;
false;
true;
false;
true;
false;
false;
true;
true;
false;
false;
false;
true;
false;
true;
false;
true;
false;
false;
false;
true;
false;
false;
true;
true;
true;
true;
true;
false;
true;
false;
true;
true;
false;
true;
false;
false;
false;
true;
false;
false;
true;
false;
true;
true;
true;
true;
false;
true;
true;
false;
true;
false;
true;
true;
false;
true;
true;
false;
false;
false;
true;
true;
true;
false;
true;
true;
true;
false;
false;
false;
false;
false;
false;
false;
true;
true;
false;
true;
false;
false;
false;
true;
false;
true;
true;
true;
true;
false;
true;
true;
true;
true;
false;
false;
true;
true;
false;
true;
true;
false;
true;
false;
true;
false;
true;
true;
true;
true;
true;
false;
false;
true;
false;
true;
false;
false;
true;
false;
true;
false;
true;
true;
false;
false;
true;
false;
false;
true;
false;
true;
false;
false;
false;
false;
false;
true;
true;
false;
true;
false;
false;
false;
false;
true;
false;
true;
false;
true;
true;
false;
false;
false;
true;
false;
true;
false;
true;
false;
false;
true;
false;
false;
true;
false;
true;
true;
false;
true;
true;
false;
false;
true;
true;
true;
false;
false;
false;
true;
false;
true;
true;
false;
true;
false;
true;
false;
true;
false;
true;
true;
false;
false;
false;
true;
false;
false;
false;
true;
true;
false;
false;
false;
false;
false;
false;
false;
false;
true;
true;
true;
false;
false;
false;
true;
true;
false;
false;
true;
false;
true;
true;
true;
true;
true;
false;
false;
true;
false;
false;
false;
false;
true;
false;
true;
false;
false;
true;
false;
true;
true;
false;
true;
true;
true;
false;
false;
true;
true;
false;
true;
false;
false;
false;
true;
true;
false;
false;
false;
true;
false;
true;
true;
true;
false;
true;
true;
false;
true;
true;
true;
false;
false;
false;
false;
false;
false;
false;
true;
true;
true;
true;
true;
false;
false;
false;
false;
false;
false;
false;
false;
false;
true;
false;
true;
true;
true;
false;
false;
false;
false;
false;
true;
true;
true;
false;
true;
true;
true;
false;
true;
true;
true;
true;
false;
false;
false;
false;
false;
true;
true;
true;
false;
true;
false;
true;
true;
false;
false;
true;
false;
true;
false;
false;
false;
false;
true;
false;
true;
true;
true;
true;
true;
false;
false;
true;
true;
false;
true;
false;
false;
false;
false;
true;
true;
true;
false;
false;
true;
true;
true;
false;
true;
true;
false;
true;
false;
false;
false;
false;
true;
false;
true;
true;
true;
true;
false;
false;
false;
true;
false;
true;
false;
true;
true;
false;
true;
false;
false;
true;
false;
true;
true;
true;
false;
false;
true;
true;
true;
true;
false;
false;
false;
true;
true;
false;
true;
true;
true;
true;
true;
true;
false;
false;
false;
false;
true;
true;
false;
true;
false;
false;
false;
true;
false;
false;
true;
false;
true;
true;
true;
false;
false;
false;
false;
false;
false;
true;
false;
true;
true;
false;
false;
true;
false;
false;
true;
true;
true;
true;
true;
false;
false;
false;
true;
false;
true;
true;
true;
false;
false;
true;
true;
false;
true;
true;
true;
false;
true;
false;
true;
true;
true;
true;
true;
true;
false;
false;
true;
true;
false;
true;
true;
false;
true;
true;
false;
true;
true;
true;
true;
true;
false;
false;
false;
false;
true;
true;
true;
false;
false;
false;
true;
false;
false;
true;
true;
true;
false;
true;
false;
false;
false;
true;
false;
false;
true;
false;
true;
false;
false;
false;
true;
false;
false;
true;
true;
true;
true;
false;
false;
true;
false;
false;
false;
true;
true;
false;
true;
true;
true;
true;
false;
false;
false;
false;
true;
false;
false;
true;
true;
true;
true;
true;
true;
false;
true;
true;
true;
true;
true;
false;
false;
false;
false;
true;
true;
true;
false;
true;
true;
false;
false;
true;
true;
true;
false;
false;
false;
true;
],
( "0x67914ebd539961b70f468fa23d4cb42133693a8ac57cd35a1e6369fe34fbedf7",
"0x44770870c0f0cfe59a10df95d6c21e6f1514a2f464b66377599438c126052d9f" )
);
( [false; false; false; false; false; false],
( "0x62454a957289b3930d10f3def0d512cfe0ef3de06421321221af3558de9d481d",
"0x0279f0aebfb66e53ff69fba16b6608dbf4319b944432f45c6e69a3dbd1f7b330" )
);
( [false; false; false; false; false; false; false],
( "0x283c7880f35179e201161402d9c4556b255917dbbf0142ae60519787d36d4dea",
"0x648224408b4b83297cd0feb4cdc4eeb224237734931145432793bcd414228dc4" )
);
( [false; false; false; false; false; false; true],
( "0x1f1086b287636a20063c9614db2de66bb7d49242e88060956a5e5845057f6f5d",
"0x6b1b395421dde74d53341caa9e01f39d7a3138efb9b57fc0381f98f4868df622" )
);
( [false; false; false; false; false; false; true; false; false],
( "0x1f1086b287636a20063c9614db2de66bb7d49242e88060956a5e5845057f6f5d",
"0x6b1b395421dde74d53341caa9e01f39d7a3138efb9b57fc0381f98f4868df622" )
);
( [
false;
false;
false;
false;
false;
false;
true;
true;
false;
true;
false;
false;
true;
true;
true;
false;
false;
true;
false;
false;
true;
false;
true;
true;
false;
true;
true;
true;
false;
false;
false;
true;
true;
true;
true;
false;
false;
true;
true;
false;
true;
false;
true;
false;
true;
true;
true;
false;
true;
false;
true;
true;
true;
false;
false;
false;
false;
true;
false;
false;
false;
false;
true;
false;
false;
true;
true;
false;
true;
false;
false;
true;
true;
true;
false;
false;
true;
true;
false;
true;
true;
false;
false;
true;
true;
true;
false;
false;
true;
true;
true;
false;
true;
true;
true;
false;
true;
false;
true;
false;
false;
false;
true;
true;
false;
true;
true;
false;
true;
false;
true;
true;
false;
false;
true;
true;
false;
false;
false;
true;
false;
true;
false;
true;
true;
true;
false;
true;
false;
false;
false;
true;
true;
false;
false;
false;
true;
true;
true;
false;
true;
true;
true;
false;
false;
false;
false;
true;
true;
false;
true;
true;
false;
false;
true;
false;
true;
false;
true;
true;
true;
false;
true;
false;
true;
true;
false;
true;
true;
true;
false;
true;
true;
true;
true;
true;
true;
false;
false;
true;
false;
false;
false;
true;
true;
false;
],
( "0x20d2b1b0551efe511755d564f8da4f5bf285fd6051331fa5f129ad95b318f6cd",
"0x2834d96950de67ae80e85545f8333c6e14b5cf5be7325dac768f401e6edd9544" )
);
( [
false;
false;
false;
false;
false;
false;
false;
false;
true;
false;
false;
false;
false;
true;
true;
false;
false;
false;
true;
true;
false;
false;
true;
true;
true;
true;
false;
true;
true;
false;
false;
true;
false;
true;
true;
true;
true;
false;
false;
true;
true;
false;
false;
true;
true;
true;
false;
true;
false;
true;
true;
false;
true;
true;
true;
true;
true;
true;
true;
false;
false;
true;
true;
true;
true;
false;
false;
false;
false;
false;
false;
false;
false;
false;
false;
true;
true;
false;
false;
true;
true;
true;
false;
false;
false;
true;
true;
false;
true;
true;
true;
true;
true;
false;
false;
true;
false;
false;
true;
false;
true;
true;
false;
false;
true;
false;
true;
false;
true;
true;
true;
true;
true;
true;
false;
true;
false;
false;
true;
false;
true;
true;
false;
false;
false;
true;
false;
true;
false;
false;
true;
true;
false;
false;
true;
false;
true;
false;
true;
false;
false;
false;
true;
false;
false;
true;
true;
true;
false;
false;
false;
true;
true;
false;
true;
true;
false;
true;
true;
true;
false;
true;
true;
true;
false;
true;
false;
false;
false;
true;
false;
true;
true;
true;
true;
false;
true;
true;
true;
true;
false;
true;
true;
false;
true;
false;
false;
false;
false;
],
( "0x01f4850a0f40e07186fee1f0a276f52fb12cffe05c18eb2aa18170330a93c555",
"0x19b0807358e7c8cba9168815ec54c4cd76997c34c592607d172151c48d5377cb" )
);
( [
false;
false;
false;
false;
false;
false;
true;
true;
true;
true;
true;
false;
false;
false;
false;
true;
false;
true;
true;
true;
true;
true;
true;
true;
true;
false;
false;
false;
false;
true;
false;
true;
true;
false;
false;
false;
true;
true;
true;
true;
true;
true;
true;
true;
false;
false;
true;
true;
true;
false;
true;
false;
true;
false;
false;
true;
false;
false;
false;
false;
true;
false;
true;
true;
false;
true;
true;
true;
true;
false;
false;
true;
false;
true;
false;
false;
true;
false;
true;
true;
true;
false;
true;
false;
false;
true;
true;
true;
false;
true;
true;
true;
true;
true;
true;
false;
false;
true;
true;
true;
true;
true;
false;
false;
true;
false;
false;
true;
false;
true;
false;
true;
false;
true;
false;
false;
true;
false;
true;
true;
true;
false;
true;
false;
false;
false;
false;
true;
true;
false;
true;
true;
false;
true;
true;
true;
true;
true;
false;
true;
true;
false;
false;
true;
false;
true;
true;
true;
true;
true;
false;
false;
false;
true;
true;
false;
true;
false;
true;
false;
true;
true;
true;
true;
true;
true;
false;
true;
false;
false;
true;
true;
false;
true;
false;
true;
true;
false;
true;
false;
true;
false;
false;
true;
true;
false;
true;
true;
false;
false;
],
( "0x26dd81a3ffa37452c6a932d41eb4f2e0fedd531e9af8c2a7935b91dff653879d",
"0x2fc7aebb729ef5cabf0fb3f883bc2eb2603093850b0ec19c1a3c08b653e7f27f" )
);
( [
false;
false;
false;
false;
false;
false;
false;
true;
false;
false;
false;
true;
true;
true;
true;
true;
true;
false;
false;
false;
false;
false;
false;
false;
false;
true;
false;
true;
false;
true;
true;
false;
false;
true;
true;
true;
false;
false;
false;
false;
true;
true;
true;
false;
false;
true;
false;
false;
false;
true;
false;
true;
false;
false;
true;
false;
true;
true;
true;
false;
false;
true;
false;
false;
true;
true;
false;
false;
false;
false;
true;
true;
false;
true;
false;
true;
false;
true;
false;
true;
false;
true;
true;
true;
true;
false;
false;
true;
false;
true;
true;
true;
true;
true;
true;
false;
false;
false;
false;
false;
false;
false;
true;
true;
true;
false;
false;
true;
true;
true;
false;
true;
false;
true;
false;
true;
false;
true;
false;
true;
false;
true;
false;
true;
false;
false;
false;
false;
false;
false;
true;
false;
true;
true;
true;
false;
false;
false;
false;
false;
false;
true;
true;
false;
true;
true;
false;
false;
false;
false;
true;
false;
false;
true;
true;
true;
true;
false;
true;
false;
true;
false;
false;
false;
false;
true;
false;
true;
true;
true;
false;
true;
false;
false;
true;
true;
false;
false;
true;
true;
true;
true;
true;
false;
true;
true;
false;
true;
true;
true;
true;
true;
false;
false;
false;
false;
false;
false;
true;
true;
false;
false;
true;
true;
true;
true;
false;
false;
false;
false;
false;
true;
true;
false;
false;
true;
false;
true;
true;
true;
true;
true;
true;
false;
true;
false;
false;
true;
false;
false;
true;
true;
false;
true;
false;
true;
true;
true;
false;
true;
false;
false;
true;
true;
true;
false;
true;
false;
false;
true;
true;
false;
false;
true;
true;
true;
false;
true;
false;
true;
false;
false;
false;
true;
true;
false;
true;
false;
false;
true;
false;
true;
true;
false;
true;
true;
false;
false;
false;
true;
false;
true;
false;
true;
false;
true;
true;
false;
true;
true;
false;
true;
true;
false;
true;
false;
true;
false;
false;
true;
true;
false;
true;
false;
false;
false;
true;
false;
false;
true;
false;
true;
true;
false;
false;
false;
false;
false;
false;
false;
false;
true;
false;
false;
true;
false;
false;
false;
true;
false;
true;
false;
true;
false;
true;
true;
false;
true;
true;
false;
false;
false;
true;
false;
false;
true;
true;
false;
true;
true;
true;
true;
true;
false;
false;
true;
true;
false;
false;
true;
false;
true;
true;
true;
false;
false;
false;
false;
false;
false;
false;
false;
true;
true;
true;
false;
true;
true;
true;
true;
false;
true;
true;
true;
false;
false;
true;
false;
false;
false;
false;
false;
false;
true;
true;
false;
true;
true;
true;
true;
false;
false;
false;
false;
false;
true;
false;
false;
false;
true;
false;
true;
false;
false;
true;
false;
true;
false;
true;
false;
true;
false;
false;
false;
true;
true;
false;
false;
true;
false;
true;
true;
true;
false;
true;
false;
true;
true;
true;
false;
false;
true;
true;
true;
false;
true;
false;
false;
false;
false;
false;
false;
true;
false;
false;
true;
true;
false;
true;
true;
false;
false;
false;
false;
true;
true;
true;
true;
false;
false;
false;
false;
false;
true;
false;
true;
false;
false;
false;
false;
false;
false;
false;
false;
true;
true;
false;
true;
true;
true;
false;
true;
false;
false;
true;
false;
true;
false;
false;
true;
false;
true;
false;
true;
false;
false;
true;
true;
true;
false;
true;
true;
false;
true;
false;
false;
false;
false;
false;
false;
true;
false;
true;
false;
false;
false;
true;
true;
true;
false;
false;
false;
false;
true;
false;
false;
true;
false;
true;
false;
true;
true;
true;
true;
false;
true;
false;
true;
true;
false;
false;
true;
false;
false;
false;
true;
false;
false;
true;
true;
false;
false;
false;
true;
true;
false;
true;
true;
false;
true;
false;
true;
false;
true;
true;
true;
true;
false;
false;
false;
true;
true;
true;
true;
true;
false;
true;
false;
false;
false;
true;
true;
false;
true;
false;
false;
true;
true;
false;
true;
true;
true;
false;
false;
true;
false;
true;
false;
true;
true;
false;
true;
false;
true;
true;
false;
true;
false;
false;
true;
false;
false;
true;
true;
false;
true;
false;
false;
true;
true;
false;
true;
true;
false;
false;
false;
false;
false;
false;
true;
true;
false;
true;
false;
true;
false;
true;
false;
false;
false;
true;
false;
false;
false;
true;
true;
true;
false;
true;
false;
true;
false;
false;
true;
false;
false;
true;
false;
true;
false;
true;
true;
false;
false;
false;
false;
true;
false;
false;
true;
false;
true;
false;
false;
false;
false;
true;
true;
true;
true;
false;
false;
true;
false;
true;
true;
false;
false;
false;
true;
false;
true;
false;
true;
true;
true;
false;
true;
true;
false;
true;
false;
true;
true;
false;
true;
false;
false;
true;
true;
false;
true;
false;
false;
true;
true;
true;
true;
true;
true;
true;
false;
false;
false;
true;
true;
false;
false;
true;
true;
true;
true;
false;
true;
true;
false;
true;
false;
false;
true;
false;
true;
true;
false;
false;
true;
],
( "0x1111740552773b00aa6a2334575aa94102cfbd084290a430c90eb56d6db65b85",
"0x6560c44b11683c20030626f89456f78a53ae8a89f565956a98ffc554b48fbb1a" )
);
( [
false;
false;
false;
false;
false;
false;
false;
false;
true;
false;
false;
true;
true;
false;
true;
false;
true;
true;
false;
true;
true;
true;
false;
true;
true;
false;
true;
false;
true;
false;
false;
false;
false;
true;
false;
false;
false;
false;
false;
false;
true;
true;
false;
false;
true;
false;
true;
false;
true;
false;
true;
false;
true;
false;
false;
false;
false;
true;
false;
false;
true;
false;
false;
false;
true;
false;
true;
false;
false;
true;
false;
true;
true;
true;
true;
false;
false;
false;
false;
true;
true;
true;
true;
true;
false;
false;
false;
true;
false;
false;
true;
true;
false;
true;
false;
true;
true;
true;
true;
false;
false;
true;
false;
true;
true;
false;
false;
true;
false;
true;
true;
true;
true;
true;
false;
false;
false;
false;
false;
true;
false;
false;
false;
true;
true;
true;
true;
false;
true;
true;
true;
true;
true;
false;
false;
false;
true;
false;
false;
false;
false;
true;
true;
false;
true;
true;
true;
false;
true;
true;
true;
false;
false;
true;
true;
true;
false;
true;
false;
false;
false;
true;
false;
false;
true;
false;
true;
true;
false;
true;
false;
false;
false;
false;
false;
true;
false;
false;
false;
false;
true;
true;
false;
true;
false;
false;
false;
true;
true;
false;
true;
true;
false;
true;
false;
false;
false;
true;
true;
true;
true;
false;
true;
false;
false;
false;
true;
false;
true;
true;
false;
true;
false;
true;
true;
true;
false;
false;
false;
true;
false;
true;
true;
true;
true;
true;
false;
true;
true;
false;
true;
false;
true;
true;
false;
false;
false;
true;
true;
true;
false;
true;
true;
false;
true;
false;
true;
false;
true;
true;
true;
true;
true;
false;
true;
false;
false;
true;
false;
true;
true;
false;
true;
false;
false;
false;
true;
false;
true;
false;
true;
false;
true;
true;
false;
false;
false;
false;
false;
false;
false;
false;
false;
false;
false;
true;
false;
false;
true;
false;
true;
false;
true;
true;
false;
true;
false;
true;
true;
false;
true;
true;
true;
false;
false;
false;
false;
true;
false;
true;
true;
true;
true;
true;
true;
true;
true;
false;
true;
true;
true;
true;
false;
false;
false;
false;
true;
true;
false;
false;
true;
false;
false;
true;
false;
false;
false;
false;
false;
true;
true;
true;
false;
false;
false;
false;
true;
false;
true;
false;
false;
false;
true;
true;
false;
true;
false;
true;
true;
true;
true;
true;
false;
false;
true;
false;
false;
true;
false;
false;
false;
false;
true;
false;
true;
false;
true;
true;
true;
true;
false;
false;
true;
true;
false;
true;
false;
true;
false;
false;
true;
true;
false;
true;
true;
false;
true;
false;
true;
false;
false;
false;
false;
false;
true;
false;
true;
false;
true;
false;
true;
true;
true;
false;
false;
false;
true;
true;
false;
false;
false;
false;
false;
true;
true;
false;
true;
true;
true;
true;
false;
false;
false;
false;
true;
false;
false;
true;
true;
true;
true;
true;
true;
true;
false;
true;
false;
true;
true;
true;
true;
false;
false;
false;
true;
false;
false;
false;
false;
true;
false;
true;
false;
false;
false;
false;
true;
false;
false;
false;
false;
true;
true;
false;
true;
true;
false;
false;
false;
false;
true;
false;
true;
true;
false;
true;
true;
true;
true;
true;
false;
false;
true;
false;
false;
true;
false;
false;
true;
false;
true;
false;
false;
false;
false;
true;
true;
true;
true;
true;
true;
true;
false;
true;
false;
false;
false;
false;
true;
false;
true;
true;
false;
true;
true;
true;
false;
true;
true;
false;
false;
true;
true;
false;
false;
false;
false;
true;
false;
false;
true;
true;
false;
true;
true;
false;
false;
true;
false;
true;
false;
true;
false;
false;
true;
true;
true;
true;
true;
false;
true;
true;
false;
false;
false;
true;
false;
true;
true;
false;
true;
false;
true;
true;
true;
false;
true;
true;
false;
false;
true;
true;
true;
true;
false;
true;
false;
true;
true;
false;
false;
false;
false;
true;
true;
false;
true;
true;
true;
false;
false;
false;
true;
false;
true;
true;
true;
false;
true;
true;
false;
true;
false;
false;
true;
false;
true;
false;
true;
false;
true;
true;
false;
false;
false;
true;
true;
true;
false;
true;
true;
true;
true;
false;
false;
false;
false;
true;
false;
true;
false;
true;
true;
false;
true;
true;
true;
true;
false;
true;
true;
true;
true;
true;
true;
true;
false;
false;
false;
true;
false;
false;
false;
false;
false;
true;
true;
false;
false;
false;
true;
false;
true;
false;
false;
false;
true;
false;
true;
true;
false;
false;
false;
true;
true;
true;
false;
true;
true;
false;
true;
false;
false;
true;
true;
false;
true;
true;
false;
true;
true;
false;
true;
true;
false;
true;
false;
false;
true;
false;
true;
false;
true;
true;
true;
true;
false;
true;
true;
true;
true;
false;
false;
false;
true;
false;
true;
true;
true;
true;
true;
false;
true;
true;
false;
true;
false;
false;
true;
false;
false;
true;
true;
false;
true;
false;
false;
false;
false;
false;
true;
true;
true;
true;
false;
false;
false;
],
( "0x429349ea9b5f8163bcda3014b3e15554df5173353fd73f315a49360c97265f68",
"0x188774bb6de41eba669be5d368942783f937acf2f418385fc5c78479b0a405ee" )
);
( [
false;
false;
false;
false;
false;
false;
false;
false;
true;
false;
false;
false;
false;
false;
true;
true;
false;
true;
false;
false;
false;
false;
false;
false;
false;
false;
false;
true;
false;
false;
true;
false;
true;
true;
true;
true;
false;
true;
false;
false;
true;
false;
true;
false;
true;
false;
true;
false;
true;
true;
false;
true;
true;
true;
false;
false;
false;
false;
false;
true;
false;
true;
true;
true;
true;
true;
true;
false;
false;
false;
true;
true;
true;
true;
true;
true;
true;
false;
true;
true;
false;
false;
true;
true;
false;
false;
false;
true;
true;
false;
true;
true;
false;
true;
false;
true;
false;
true;
true;
false;
false;
true;
false;
false;
false;
false;
true;
false;
true;
false;
false;
true;
false;
false;
true;
false;
false;
true;
true;
false;
true;
false;
true;
false;
false;
false;
true;
true;
true;
true;
true;
false;
true;
false;
true;
false;
false;
false;
false;
true;
true;
false;
true;
true;
false;
true;
true;
true;
true;
true;
true;
false;
false;
false;
false;
false;
true;
false;
true;
false;
true;
true;
false;
true;
false;
false;
false;
true;
true;
false;
true;
true;
true;
true;
true;
false;
false;
true;
true;
true;
false;
false;
true;
true;
false;
true;
true;
false;
false;
false;
true;
false;
false;
true;
false;
false;
false;
false;
false;
false;
false;
false;
false;
false;
false;
false;
false;
true;
false;
true;
true;
false;
false;
false;
false;
false;
false;
false;
true;
false;
false;
false;
false;
false;
false;
true;
false;
false;
false;
true;
true;
true;
true;
true;
true;
false;
true;
false;
true;
false;
false;
true;
false;
false;
true;
true;
false;
false;
false;
true;
true;
true;
false;
false;
true;
false;
true;
true;
true;
true;
false;
false;
true;
true;
true;
true;
false;
true;
true;
true;
true;
true;
true;
false;
false;
true;
false;
false;
false;
false;
true;
false;
true;
true;
false;
true;
true;
false;
true;
true;
false;
false;
true;
true;
false;
false;
false;
false;
true;
true;
true;
true;
true;
false;
true;
false;
false;
true;
true;
false;
true;
true;
true;
true;
true;
false;
false;
false;
true;
false;
false;
true;
true;
false;
false;
false;
false;
false;
true;
true;
true;
false;
true;
true;
true;
false;
true;
true;
true;
false;
true;
true;
false;
false;
true;
false;
false;
true;
false;
true;
true;
false;
false;
true;
false;
false;
false;
true;
true;
true;
false;
true;
true;
false;
true;
false;
true;
false;
false;
false;
true;
true;
false;
true;
true;
false;
true;
false;
true;
true;
true;
false;
false;
false;
false;
false;
true;
true;
false;
false;
true;
true;
false;
true;
true;
false;
true;
false;
true;
true;
true;
false;
true;
false;
true;
false;
false;
true;
false;
false;
true;
false;
false;
true;
true;
true;
false;
false;
false;
false;
false;
true;
true;
true;
true;
false;
true;
false;
true;
true;
true;
false;
true;
true;
true;
true;
true;
false;
true;
false;
false;
false;
false;
false;
false;
false;
false;
true;
false;
false;
true;
false;
true;
false;
false;
true;
false;
false;
false;
false;
false;
true;
false;
false;
false;
true;
false;
false;
false;
true;
true;
false;
true;
false;
true;
true;
false;
false;
true;
true;
false;
false;
true;
false;
false;
true;
true;
true;
false;
false;
false;
true;
false;
true;
false;
false;
true;
false;
false;
false;
true;
false;
false;
false;
false;
false;
true;
true;
true;
false;
true;
true;
false;
true;
false;
false;
false;
false;
false;
true;
false;
true;
true;
true;
false;
false;
false;
false;
true;
true;
true;
true;
false;
false;
true;
true;
true;
false;
true;
false;
true;
false;
true;
true;
true;
false;
false;
false;
true;
true;
true;
true;
false;
false;
true;
false;
false;
true;
false;
true;
true;
true;
true;
false;
false;
false;
true;
true;
false;
false;
false;
false;
true;
false;
false;
true;
false;
true;
true;
false;
false;
false;
false;
true;
true;
true;
false;
true;
true;
false;
false;
false;
true;
true;
false;
true;
false;
false;
true;
true;
false;
false;
true;
true;
false;
true;
false;
true;
true;
true;
false;
false;
false;
false;
false;
true;
true;
true;
true;
true;
false;
false;
false;
true;
false;
true;
false;
false;
true;
false;
false;
true;
true;
false;
false;
false;
false;
true;
true;
true;
false;
false;
false;
true;
false;
false;
true;
false;
false;
false;
true;
true;
true;
true;
false;
true;
true;
false;
true;
false;
false;
true;
false;
false;
false;
true;
false;
true;
false;
true;
true;
true;
false;
true;
false;
true;
true;
true;
true;
false;
true;
true;
false;
false;
true;
true;
false;
false;
true;
true;
false;
false;
true;
false;
true;
true;
true;
true;
true;
true;
false;
false;
true;
true;
false;
false;
true;
true;
true;
false;
true;
true;
false;
true;
true;
false;
false;
false;
true;
true;
false;
true;
true;
true;
false;
false;
true;
true;
false;
false;
false;
true;
false;
true;
false;
false;
true;
true;
false;
false;
false;
false;
true;
false;
false;
false;
true;
false;
false;
true;
true;
false;
true;
true;
true;
true;
false;
true;
false;
false;
true;
true;
false;
true;
true;
true;
false;
true;
true;
false;
true;
false;
true;
true;
true;
true;
false;
true;
false;
false;
true;
false;
true;
false;
false;
true;
true;
false;
false;
false;
false;
true;
true;
false;
false;
true;
true;
true;
false;
true;
false;
false;
false;
false;
true;
true;
false;
true;
true;
true;
true;
true;
false;
false;
true;
false;
false;
true;
false;
true;
false;
false;
false;
true;
true;
true;
true;
false;
true;
true;
false;
false;
false;
false;
false;
true;
false;
false;
true;
true;
false;
false;
false;
true;
true;
false;
false;
false;
false;
true;
true;
true;
false;
true;
true;
true;
true;
true;
false;
false;
false;
false;
false;
true;
true;
false;
false;
true;
false;
true;
false;
true;
true;
true;
false;
true;
true;
true;
true;
true;
false;
false;
false;
true;
true;
false;
true;
true;
false;
true;
true;
false;
true;
true;
true;
false;
false;
true;
true;
true;
false;
false;
true;
true;
false;
false;
true;
true;
true;
false;
false;
false;
false;
true;
false;
false;
true;
false;
true;
false;
false;
false;
false;
false;
false;
false;
true;
true;
false;
false;
false;
true;
false;
true;
true;
true;
true;
false;
false;
true;
false;
false;
true;
true;
false;
],
( "0x00e827f3ed136f3c91c61c97ab9b7cca0ea53c20e47abb5e226ede297bdd5f37",
"0x315cc00a54972df6a19f650d3fab5f2ad0fb07397bacb6944568618f2aa76bf6" )
);
( [
false;
false;
false;
false;
false;
false;
false;
false;
true;
true;
true;
false;
false;
true;
false;
true;
false;
true;
true;
true;
false;
false;
true;
true;
true;
true;
true;
true;
false;
false;
true;
true;
false;
true;
true;
true;
false;
true;
false;
false;
false;
false;
true;
true;
true;
false;
true;
true;
true;
true;
false;
false;
true;
true;
false;
true;
true;
false;
true;
false;
true;
true;
true;
false;
true;
false;
true;
false;
true;
false;
true;
false;
true;
true;
false;
false;
true;
true;
true;
false;
true;
true;
true;
false;
false;
false;
false;
true;
true;
true;
true;
false;
false;
true;
true;
false;
false;
true;
false;
false;
true;
true;
false;
true;
true;
true;
true;
false;
false;
false;
true;
true;
true;
false;
false;
false;
false;
true;
false;
true;
false;
true;
true;
true;
true;
true;
false;
true;
false;
false;
false;
true;
false;
false;
true;
false;
true;
false;
true;
false;
false;
true;
false;
false;
false;
true;
true;
false;
true;
true;
false;
true;
false;
false;
true;
false;
true;
true;
false;
true;
true;
true;
true;
true;
true;
true;
false;
true;
false;
true;
false;
false;
false;
true;
false;
true;
true;
true;
false;
true;
false;
true;
true;
true;
true;
true;
false;
false;
false;
true;
false;
false;
true;
false;
false;
false;
true;
false;
false;
true;
false;
false;
false;
false;
true;
false;
true;
false;
true;
true;
false;
true;
false;
false;
true;
false;
true;
false;
true;
false;
true;
true;
true;
false;
false;
true;
true;
false;
true;
true;
true;
false;
false;
true;
false;
false;
true;
true;
true;
true;
true;
false;
false;
false;
true;
true;
false;
false;
false;
true;
false;
true;
false;
false;
true;
true;
true;
true;
false;
true;
true;
true;
false;
true;
true;
false;
true;
false;
true;
true;
true;
false;
true;
true;
true;
false;
false;
true;
false;
false;
false;
false;
true;
false;
false;
true;
false;
false;
false;
true;
true;
false;
false;
true;
true;
true;
false;
false;
true;
false;
true;
false;
false;
false;
false;
true;
true;
false;
true;
true;
false;
true;
true;
false;
false;
false;
true;
true;
true;
false;
false;
false;
false;
true;
true;
false;
true;
false;
true;
true;
true;
false;
true;
false;
false;
false;
false;
false;
false;
false;
false;
false;
true;
false;
true;
false;
false;
false;
true;
false;
false;
false;
false;
false;
false;
true;
false;
true;
true;
true;
true;
false;
true;
false;
true;
false;
false;
true;
false;
false;
true;
false;
true;
true;
false;
false;
true;
false;
true;
true;
false;
false;
true;
true;
true;
true;
true;
false;
false;
false;
true;
true;
false;
false;
false;
true;
false;
true;
false;
false;
true;
false;
true;
false;
false;
true;
false;
false;
false;
true;
true;
false;
true;
false;
false;
false;
false;
false;
false;
false;
false;
true;
false;
false;
true;
true;
false;
false;
true;
false;
false;
false;
true;
false;
false;
true;
false;
false;
true;
false;
false;
true;
false;
false;
true;
false;
true;
true;
true;
true;
true;
true;
true;
true;
false;
true;
false;
false;
false;
false;
false;
false;
false;
false;
true;
false;
true;
true;
false;
false;
false;
false;
true;
false;
false;
true;
true;
false;
false;
false;
false;
false;
false;
true;
false;
false;
true;
false;
true;
true;
false;
true;
false;
false;
true;
false;
false;
true;
false;
false;
true;
false;
false;
true;
false;
true;
true;
false;
true;
false;
true;
false;
true;
true;
false;
true;
false;
true;
false;
false;
true;
false;
true;
false;
true;
false;
true;
true;
true;
true;
true;
false;
true;
false;
true;
false;
false;
true;
false;
true;
false;
true;
false;
false;
false;
true;
true;
true;
false;
true;
false;
true;
false;
false;
false;
true;
false;
false;
true;
true;
true;
false;
false;
true;
false;
true;
true;
true;
false;
true;
false;
false;
false;
true;
true;
true;
false;
true;
false;
true;
true;
false;
false;
true;
false;
false;
true;
true;
false;
false;
true;
false;
false;
true;
true;
true;
true;
true;
false;
true;
false;
true;
false;
false;
false;
true;
true;
true;
true;
false;
true;
true;
true;
false;
false;
false;
false;
true;
false;
false;
true;
true;
true;
false;
false;
false;
true;
false;
true;
false;
false;
true;
true;
false;
true;
true;
false;
false;
false;
false;
false;
false;
true;
false;
true;
true;
true;
true;
true;
true;
true;
true;
false;
false;
false;
true;
false;
false;
true;
false;
true;
true;
true;
true;
true;
false;
false;
false;
false;
false;
false;
false;
true;
false;
true;
true;
true;
true;
false;
false;
false;
false;
false;
true;
false;
true;
false;
false;
true;
true;
false;
true;
false;
false;
true;
true;
false;
true;
true;
true;
true;
false;
true;
true;
false;
true;
true;
true;
false;
false;
true;
false;
true;
true;
true;
true;
false;
false;
true;
false;
false;
false;
false;
true;
true;
true;
true;
false;
false;
false;
true;
true;
true;
false;
true;
false;
true;
false;
true;
false;
true;
false;
true;
false;
true;
true;
false;
false;
true;
true;
false;
false;
true;
false;
true;
false;
false;
false;
true;
true;
true;
false;
true;
false;
false;
false;
false;
true;
true;
true;
true;
true;
true;
false;
true;
false;
false;
false;
true;
false;
false;
true;
true;
true;
false;
false;
false;
false;
false;
true;
false;
false;
true;
false;
false;
true;
true;
true;
true;
false;
false;
true;
true;
true;
false;
true;
true;
true;
false;
false;
false;
true;
false;
false;
false;
true;
false;
false;
true;
true;
true;
false;
true;
true;
false;
true;
true;
false;
false;
false;
true;
false;
true;
false;
true;
true;
true;
false;
false;
true;
false;
true;
true;
true;
false;
false;
false;
true;
false;
false;
true;
false;
false;
false;
false;
true;
true;
true;
false;
true;
false;
false;
false;
true;
true;
true;
true;
false;
true;
true;
false;
true;
true;
false;
true;
false;
false;
false;
false;
false;
false;
true;
false;
false;
true;
true;
true;
true;
false;
true;
true;
true;
true;
false;
true;
false;
true;
false;
false;
false;
true;
true;
false;
false;
true;
true;
false;
false;
true;
true;
true;
false;
false;
true;
true;
false;
false;
false;
true;
false;
false;
true;
true;
true;
true;
false;
true;
false;
true;
false;
false;
false;
false;
true;
false;
false;
false;
false;
true;
false;
true;
false;
true;
false;
false;
false;
],
( "0x3ee50557c4aa9158c4bb9d5961208e6c62f55c73ad7c7695a0eba0bcb6d83d05",
"0x1b1a2be6e47688828aeadf2d37db298eac0c2736c2722b227871fdeeee29de33" )
);
( [false; true; false; false; false; true],
( "0x61f8e2cb8e945631677b450d5e5669bc6b5f2ec69b321ac550dbe74525d7ac9a",
"0x4e11951ab9c9400ee38a18bd98cdb9453f1f67141ee9d9bf0c1c157d4fb34f9a" )
);
( [false; true; false; false; false; true; false],
( "0x27fa1e296c37dde8448483ce5485c2604d1d830e53812246299773a02ecd519c",
"0x08e499113675202cb42b4b681a31430814edebd72c5bb3bc3bfedf91fb0605df" )
);
( [false; true; false; false; false; true; true],
( "0x52112dd7a4293d049bb011683244a0f957e6ba95e1d1cf2fb6654d449a6d3fbc",
"0x2ae14ecd81bb5b4489d2d64b5d2eb92a684087b28dd9a4950ecdb78c014e178c" )
);
( [false; true; false; false; false; true; true; false; false],
( "0x52112dd7a4293d049bb011683244a0f957e6ba95e1d1cf2fb6654d449a6d3fbc",
"0x2ae14ecd81bb5b4489d2d64b5d2eb92a684087b28dd9a4950ecdb78c014e178c" )
);
( [
true;
true;
false;
true;
true;
false;
true;
true;
false;
true;
true;
false;
true;
true;
false;
true;
true;
false;
true;
true;
false;
true;
true;
false;
true;
true;
false;
true;
true;
false;
true;
true;
false;
true;
true;
false;
true;
true;
false;
true;
true;
false;
true;
true;
false;
true;
true;
false;
true;
true;
false;
true;
true;
false;
true;
true;
false;
true;
true;
false;
true;
true;
false;
true;
true;
false;
true;
true;
false;
true;
true;
false;
true;
true;
false;
true;
true;
false;
true;
true;
false;
true;
true;
false;
true;
true;
false;
true;
true;
false;
true;
true;
false;
true;
true;
false;
true;
true;
false;
true;
true;
false;
true;
true;
false;
true;
true;
false;
true;
true;
false;
true;
true;
false;
true;
true;
false;
true;
true;
false;
true;
true;
false;
true;
true;
false;
true;
true;
false;
true;
true;
false;
true;
true;
false;
true;
true;
false;
true;
true;
false;
true;
true;
false;
true;
true;
false;
true;
true;
false;
true;
true;
false;
true;
true;
false;
true;
true;
false;
true;
true;
false;
true;
true;
false;
true;
true;
false;
true;
true;
false;
true;
true;
false;
true;
true;
false;
true;
true;
false;
true;
true;
false;
true;
true;
false;
true;
true;
false;
],
( "0x414f6ba05f6b92da1f9051950769e1083d05615def32b016ae424309828a11f4",
"0x471d2109656afcb96d0609b371b132b97efcf72c6051064dd19fdc004799bfa9" )
);
]