From 6f5bbb7ceb3174e35c46bde8ac187677b8fc4148 Mon Sep 17 00:00:00 2001 From: Julien CLEMENT Date: Fri, 25 Mar 2022 22:45:24 +0100 Subject: [PATCH] feat(q-solved): add first q-solved writeup Signed-off-by: Julien CLEMENT --- jujure/config.toml | 12 +- jujure/content/post/conf_exploit.md | 2 +- jujure/content/writeups/q-solved.md | 111 + jujure/layouts/shortcodes/code.html | 3 + .../conf_exploit/slides.pdf} | Bin jujure/static/q-solved/circuit.json | 1 + jujure/static/q-solved/circuit_linted.json | 17414 ++++++++++++++++ jujure/static/q-solved/flag.png | Bin 0 -> 16664 bytes jujure/static/q-solved/flag.py | 33 + jujure/static/q-solved/poc_flag.png | Bin 0 -> 12271 bytes jujure/static/q-solved/poc_flag.py | 19 + jujure/static/q-solved/solve.py | 56 + 12 files changed, 17645 insertions(+), 6 deletions(-) create mode 100644 jujure/content/writeups/q-solved.md create mode 100644 jujure/layouts/shortcodes/code.html rename jujure/{content/post/conf_exploit.pdf => static/conf_exploit/slides.pdf} (100%) create mode 100755 jujure/static/q-solved/circuit.json create mode 100755 jujure/static/q-solved/circuit_linted.json create mode 100755 jujure/static/q-solved/flag.png create mode 100755 jujure/static/q-solved/flag.py create mode 100755 jujure/static/q-solved/poc_flag.png create mode 100755 jujure/static/q-solved/poc_flag.py create mode 100755 jujure/static/q-solved/solve.py diff --git a/jujure/config.toml b/jujure/config.toml index e4a18a1..c710efb 100644 --- a/jujure/config.toml +++ b/jujure/config.toml @@ -7,6 +7,7 @@ paginate = 10 PygmentsCodeFences = true PygmentsStyle = "monokai" + [author] name = "Julien CLEMENT" @@ -56,10 +57,6 @@ PygmentsStyle = "monokai" [params.footer] author = true -[taxonomies] - category = "blog" - tag = "tags" - series = "series" [languages] [languages.en] @@ -71,7 +68,7 @@ PygmentsStyle = "monokai" [languages.en.params.logo] logoMark = "juju@synacktiv ~$ " - logoText = "cryptoratio" + logoText = "cryptopouneur" logoHomeLink = "/" logoCursorColor = "#3884FF" # or @@ -84,3 +81,8 @@ PygmentsStyle = "monokai" identifier = "posts" name = "Posts" url = "/post/" + + [[menu.main]] + identifier = "writeups" + name = "Writeups" + url = "/writeups/" diff --git a/jujure/content/post/conf_exploit.md b/jujure/content/post/conf_exploit.md index 7f7ad38..2dd8e8d 100644 --- a/jujure/content/post/conf_exploit.md +++ b/jujure/content/post/conf_exploit.md @@ -8,5 +8,5 @@ tags: ["Reverse", "Exploit"] {{< youtube 5g2eZSST7YE >}} {{< rawhtml >}} - + {{< /rawhtml >}} diff --git a/jujure/content/writeups/q-solved.md b/jujure/content/writeups/q-solved.md new file mode 100644 index 0000000..e0697ed --- /dev/null +++ b/jujure/content/writeups/q-solved.md @@ -0,0 +1,111 @@ +--- +title: "Reversing quantum algorithms ~~for ctf points~~ | q-solved - zer0pts 2022" +date: "2022-03-25 18:00:00" +author: "Juju" +tags: ["Reverse", "Quantum", "Writeup", "zer0pts"] +--- + +# Challenge description +`quantum` `reverse` | `304 pts` `8 solves` +``` +I copied the solver of a reversing task from the future. But it doesn't +show the flag forever :thinking: +``` + +# Given files + +{{< code file="/static/q-solved/solve.py" language="py" >}} + +[circuit.json](/q-solved/circuit.json) + +# TL;DR + +The scripts builds a quantum circuit describing an unstructured search +algorithm inspired by the grover's algorithm. Its goal is to find among all +possible inputs, the one(s) with the highest probability to match a predefined +criteria. + +It is composed of an `oracle` and a `diffuser`. The oracle is a black-box +function taking a state vector as input and introducing a phase shift in the +target qubit if the input matches the predefined criteria. + +The diffuser then performs amplitude amplification using the target qubit's +phase kickback when the oracle matches, thus increasing the probability of a +matching input vector to be measured. + +Basically, the output of the circuit is the input matching the criteria +described by the oracle. + +All that remains to do for us is to understand what that criteria is. + +# Reversing the Oracle + +We can see that the oracle is built using the `circuit.json`. + +The oracle is composed of 1408 multi-controlled X (MCX) gates, each controlled by 1 +or 3 input qubits with with a control state given in the json. Each MCX gate +acts on a dedicated ancilla qubit. + +After all 1408 MCX, the circuit adds an other MCX on the target qubit with all +control states set to 0. The target qubit is therefore introduced a phase shift +when all ancillas are in `|0>`. + +So we want all ancillas to be `|0>` but it is also their original state. We +therfore have to influence the control qubits of each MCX so that none actually +performs the X gate on any ancilla. This means that among all control qubits of +a MCX, at least one must have a state different from its control state, thus +deactivating the gate. + +If we look closely, we can see that the control state of a control qubit is `1` +when the json specifies `False`, and `0` when `True`. + +Remember, inputs must be different from their control state specified on the +gate. Therefore a qubit marked as `False`, must take value `|0>` to deactivate +the gate. Similarly, a qubit marked `True` must take value `|1>`. + +So we said earlier that the MCX have either 3 or 1 control bits and that at +least 1 of the control qubits must mismatch from their control state. + +# POC with trivial qubits + +Obviously this results in an equation system but let's see what we get with +only the obvious qubits: the ones controlling an ancilla by themselves. + +Indeed if an ancilla is controlled by a single input qubit then this qubit MUST +be different from his control state so the X gate stays disabled. Therefore, any input qubit marked as `False` and as the only control of a gate MUST be set to `|0>` to match the oracle. Same is true for qubits marked as `True` that must be in state `|1>`. + +So let's try to set all obvious qubits: + +{{< code file="/static/q-solved/poc_flag.py" language="py" >}} + +{{< image src="/q-solved/poc_flag.png" style="border-radius: 8px;" >}} + +Well, most of them are 0, except, the first byte: `z` + +Which is a really good sign that we are indead decoding a flag of the form +`zer0pts{...}` + +# Equation system + +For MCX with 3 control bits, we simply need to put them in an equation system, +with the trivial qubits. + +We will have a total of 1408 equations, 1 for each MCX, each equation basically +saying that at least 1 Qubit must be different from its control state, and +therefore equal to its assigned boolean in the json. + +Once the system is solved, we will know the state of all qubits that match the +oracle, which is the one outputed by the quantum circuit. We will then be able +to decode it to get the flag. + +# Solve + +I used z3 to build and solve the equation system: + +{{< code file="/static/q-solved/flag.py" language="py" >}} + +Running the script outputs us the equation system, sat indicated that z3 found +a solution to the system and the decoded solution of the system with the flag: +`zer0pts{FLAG_by_Gr0v3r's_4lg0r1thm}` + +{{< image src="/q-solved/flag.png" style="border-radius: 8px;" >}} diff --git a/jujure/layouts/shortcodes/code.html b/jujure/layouts/shortcodes/code.html new file mode 100644 index 0000000..5146d78 --- /dev/null +++ b/jujure/layouts/shortcodes/code.html @@ -0,0 +1,3 @@ +{{ $file := .Get "file" | readFile }} +{{ $lang := .Get "language" }} +{{ (print "```" $lang "\n" $file "\n```") | markdownify }} diff --git a/jujure/content/post/conf_exploit.pdf b/jujure/static/conf_exploit/slides.pdf similarity index 100% rename from jujure/content/post/conf_exploit.pdf rename to jujure/static/conf_exploit/slides.pdf diff --git a/jujure/static/q-solved/circuit.json b/jujure/static/q-solved/circuit.json new file mode 100755 index 0000000..656231c --- /dev/null +++ b/jujure/static/q-solved/circuit.json @@ -0,0 +1 @@ +{"memory": 560, "ancilla": 1408, "circuit": [[[false, 0]], [[true, 0], [false, 8], [false, 280]], [[false, 0], [true, 8], [false, 280]], [[true, 280], [false, 0], [false, 8]], [[true, 0], [true, 8], [true, 280]], [[false, 280]], [[false, 19], [false, 11], [false, 281]], [[true, 11], [true, 19], [false, 281]], [[false, 19], [true, 11], [true, 281]], [[false, 11], [true, 19], [true, 281]], [[false, 281]], [[false, 18], [false, 26], [false, 282]], [[true, 18], [true, 26], [false, 282]], [[true, 18], [false, 26], [true, 282]], [[false, 18], [true, 26], [true, 282]], [[false, 282]], [[false, 25], [false, 33], [false, 283]], [[true, 25], [true, 33], [false, 283]], [[true, 25], [false, 33], [true, 283]], [[false, 25], [true, 33], [true, 283]], [[false, 283]], [[false, 32], [false, 40], [false, 284]], [[true, 32], [true, 40], [false, 284]], [[true, 32], [false, 40], [true, 284]], [[false, 32], [true, 40], [true, 284]], [[false, 284]], [[true, 40], [false, 48], [false, 285]], [[true, 48], [false, 40], [false, 285]], [[true, 285], [false, 40], [false, 48]], [[true, 40], [true, 48], [true, 285]], [[false, 285]], [[false, 50], [false, 58], [false, 286]], [[true, 50], [true, 58], [false, 286]], [[true, 50], [false, 58], [true, 286]], [[false, 50], [true, 58], [true, 286]], [[false, 286]], [[false, 57], [false, 65], [false, 287]], [[true, 57], [true, 65], [false, 287]], [[true, 57], [false, 65], [true, 287]], [[true, 65], [false, 57], [true, 287]], [[false, 287]], [[false, 68], [false, 76], [false, 288]], [[true, 68], [true, 76], [false, 288]], [[true, 68], [false, 76], [true, 288]], [[false, 68], [true, 76], [true, 288]], [[false, 288]], [[false, 73], [false, 81], [false, 289]], [[true, 73], [true, 81], [false, 289]], [[true, 73], [false, 81], [true, 289]], [[false, 73], [true, 81], [true, 289]], [[false, 289]], [[false, 88], [false, 80], [false, 290]], [[true, 80], [true, 88], [false, 290]], [[false, 88], [true, 80], [true, 290]], [[false, 80], [true, 88], [true, 290]], [[false, 290]], [[false, 88], [false, 96], [false, 291]], [[true, 88], [true, 96], [false, 291]], [[true, 88], [false, 96], [true, 291]], [[false, 88], [true, 96], [true, 291]], [[false, 291]], [[false, 97], [false, 105], [false, 292]], [[true, 97], [true, 105], [false, 292]], [[true, 97], [false, 105], [true, 292]], [[false, 97], [true, 105], [true, 292]], [[false, 292]], [[false, 106], [false, 114], [false, 293]], [[true, 106], [true, 114], [false, 293]], [[true, 106], [false, 114], [true, 293]], [[false, 106], [true, 114], [true, 293]], [[false, 293]], [[false, 112], [false, 120], [false, 294]], [[true, 112], [true, 120], [false, 294]], [[true, 112], [false, 120], [true, 294]], [[false, 112], [true, 120], [true, 294]], [[false, 294]], [[false, 122], [false, 130], [false, 295]], [[true, 122], [true, 130], [false, 295]], [[true, 122], [false, 130], [true, 295]], [[false, 122], [true, 130], [true, 295]], [[false, 295]], [[false, 129], [false, 137], [false, 296]], [[true, 129], [true, 137], [false, 296]], [[true, 129], [false, 137], [true, 296]], [[false, 129], [true, 137], [true, 296]], [[false, 296]], [[false, 139], [false, 147], [false, 297]], [[true, 139], [true, 147], [false, 297]], [[true, 139], [false, 147], [true, 297]], [[false, 139], [true, 147], [true, 297]], [[false, 297]], [[false, 144], [false, 152], [false, 298]], [[true, 144], [true, 152], [false, 298]], [[true, 144], [false, 152], [true, 298]], [[false, 144], [true, 152], [true, 298]], [[false, 298]], [[false, 161], [false, 153], [false, 299]], [[true, 153], [true, 161], [false, 299]], [[false, 161], [true, 153], [true, 299]], [[false, 153], [true, 161], [true, 299]], [[false, 299]], [[false, 161], [false, 169], [false, 300]], [[true, 161], [true, 169], [false, 300]], [[true, 161], [false, 169], [true, 300]], [[false, 161], [true, 169], [true, 300]], [[false, 300]], [[false, 169], [false, 177], [false, 301]], [[true, 169], [true, 177], [false, 301]], [[true, 169], [false, 177], [true, 301]], [[false, 169], [true, 177], [true, 301]], [[false, 301]], [[false, 179], [false, 187], [false, 302]], [[true, 179], [true, 187], [false, 302]], [[true, 179], [false, 187], [true, 302]], [[false, 179], [true, 187], [true, 302]], [[false, 302]], [[false, 185], [false, 193], [false, 303]], [[true, 185], [true, 193], [false, 303]], [[true, 185], [false, 193], [true, 303]], [[false, 185], [true, 193], [true, 303]], [[false, 303]], [[false, 194], [false, 202], [false, 304]], [[true, 194], [true, 202], [false, 304]], [[true, 194], [false, 202], [true, 304]], [[false, 194], [true, 202], [true, 304]], [[false, 304]], [[false, 210], [false, 202], [false, 305]], [[true, 202], [true, 210], [false, 305]], [[false, 210], [true, 202], [true, 305]], [[false, 202], [true, 210], [true, 305]], [[false, 305]], [[false, 210], [false, 218], [false, 306]], [[true, 210], [true, 218], [false, 306]], [[true, 210], [false, 218], [true, 306]], [[false, 210], [true, 218], [true, 306]], [[false, 306]], [[false, 227], [false, 219], [false, 307]], [[true, 219], [true, 227], [false, 307]], [[false, 227], [true, 219], [true, 307]], [[true, 227], [false, 219], [true, 307]], [[false, 307]], [[false, 227], [false, 235], [false, 308]], [[true, 227], [true, 235], [false, 308]], [[true, 227], [false, 235], [true, 308]], [[false, 227], [true, 235], [true, 308]], [[false, 308]], [[false, 234], [false, 242], [false, 309]], [[true, 234], [true, 242], [false, 309]], [[true, 234], [false, 242], [true, 309]], [[true, 242], [false, 234], [true, 309]], [[false, 309]], [[false, 241], [false, 249], [false, 310]], [[true, 241], [true, 249], [false, 310]], [[false, 249], [true, 241], [true, 310]], [[false, 241], [true, 249], [true, 310]], [[false, 310]], [[false, 249], [false, 257], [false, 311]], [[true, 249], [true, 257], [false, 311]], [[true, 249], [false, 257], [true, 311]], [[false, 249], [true, 257], [true, 311]], [[false, 311]], [[false, 257], [false, 265], [false, 312]], [[true, 257], [true, 265], [false, 312]], [[true, 257], [false, 265], [true, 312]], [[false, 257], [true, 265], [true, 312]], [[false, 312]], [[false, 264], [false, 272], [false, 313]], [[true, 264], [true, 272], [false, 313]], [[true, 264], [false, 272], [true, 313]], [[false, 264], [true, 272], [true, 313]], [[false, 313]], [[false, 0], [true, 272], [false, 314]], [[true, 0], [false, 272], [false, 314]], [[false, 0], [false, 272], [true, 314]], [[true, 0], [true, 272], [true, 314]], [[false, 314]], [[false, 2]], [[false, 7]], [[true, 1]], [[true, 3]], [[true, 4]], [[true, 5]], [[true, 6]], [[true, 1], [false, 9], [false, 315]], [[true, 9], [false, 1], [false, 315]], [[true, 315], [false, 1], [false, 9]], [[true, 1], [true, 9], [true, 315]], [[false, 315]], [[true, 2], [false, 10], [false, 316]], [[false, 2], [true, 10], [false, 316]], [[true, 316], [false, 2], [false, 10]], [[true, 2], [true, 10], [true, 316]], [[false, 316]], [[true, 3], [false, 11], [false, 317]], [[true, 11], [false, 3], [false, 317]], [[true, 317], [false, 3], [false, 11]], [[true, 3], [true, 11], [true, 317]], [[false, 317]], [[true, 4], [false, 12], [false, 318]], [[true, 12], [false, 4], [false, 318]], [[true, 318], [false, 4], [false, 12]], [[true, 4], [true, 12], [true, 318]], [[false, 318]], [[false, 5], [false, 13], [false, 319]], [[true, 5], [true, 13], [false, 319]], [[true, 5], [false, 13], [true, 319]], [[false, 5], [true, 13], [true, 319]], [[false, 319]], [[false, 6], [false, 14], [false, 320]], [[true, 6], [true, 14], [false, 320]], [[true, 6], [false, 14], [true, 320]], [[false, 6], [true, 14], [true, 320]], [[false, 320]], [[false, 7], [false, 15], [false, 321]], [[true, 7], [true, 15], [false, 321]], [[true, 7], [false, 15], [true, 321]], [[false, 7], [true, 15], [true, 321]], [[false, 321]], [[false, 13], [false, 21], [false, 322]], [[true, 13], [true, 21], [false, 322]], [[true, 13], [false, 21], [true, 322]], [[true, 21], [false, 13], [true, 322]], [[false, 322]], [[false, 14], [false, 22], [false, 323]], [[true, 14], [true, 22], [false, 323]], [[true, 14], [false, 22], [true, 323]], [[true, 22], [false, 14], [true, 323]], [[false, 323]], [[false, 15], [false, 23], [false, 324]], [[true, 15], [true, 23], [false, 324]], [[true, 15], [false, 23], [true, 324]], [[true, 23], [false, 15], [true, 324]], [[false, 324]], [[true, 8], [false, 16], [false, 325]], [[true, 16], [false, 8], [false, 325]], [[true, 325], [false, 8], [false, 16]], [[true, 8], [true, 16], [true, 325]], [[false, 325]], [[true, 9], [false, 17], [false, 326]], [[true, 17], [false, 9], [false, 326]], [[true, 326], [false, 9], [false, 17]], [[true, 9], [true, 17], [true, 326]], [[false, 326]], [[false, 18], [true, 10], [false, 327]], [[true, 18], [false, 10], [false, 327]], [[true, 327], [false, 10], [false, 18]], [[true, 10], [true, 18], [true, 327]], [[false, 327]], [[true, 12], [false, 20], [false, 328]], [[true, 20], [false, 12], [false, 328]], [[true, 328], [false, 12], [false, 20]], [[true, 12], [true, 20], [true, 328]], [[false, 328]], [[false, 19], [false, 27], [false, 329]], [[true, 19], [true, 27], [false, 329]], [[true, 19], [false, 27], [true, 329]], [[false, 19], [true, 27], [true, 329]], [[false, 329]], [[false, 16], [false, 24], [false, 330]], [[true, 16], [true, 24], [false, 330]], [[true, 16], [false, 24], [true, 330]], [[false, 16], [true, 24], [true, 330]], [[false, 330]], [[false, 20], [false, 28], [false, 331]], [[true, 20], [true, 28], [false, 331]], [[true, 20], [false, 28], [true, 331]], [[true, 28], [false, 20], [true, 331]], [[false, 331]], [[false, 21], [false, 29], [false, 332]], [[true, 21], [true, 29], [false, 332]], [[true, 21], [false, 29], [true, 332]], [[true, 29], [false, 21], [true, 332]], [[false, 332]], [[false, 23], [false, 31], [false, 333]], [[true, 23], [true, 31], [false, 333]], [[true, 23], [false, 31], [true, 333]], [[true, 31], [false, 23], [true, 333]], [[false, 333]], [[false, 25], [true, 17], [false, 334]], [[true, 25], [false, 17], [false, 334]], [[true, 334], [false, 17], [false, 25]], [[true, 17], [true, 25], [true, 334]], [[false, 334]], [[true, 22], [false, 30], [false, 335]], [[true, 30], [false, 22], [false, 335]], [[true, 335], [false, 22], [false, 30]], [[true, 22], [true, 30], [true, 335]], [[false, 335]], [[false, 24], [false, 32], [false, 336]], [[true, 24], [true, 32], [false, 336]], [[true, 24], [false, 32], [true, 336]], [[false, 24], [true, 32], [true, 336]], [[false, 336]], [[false, 26], [false, 34], [false, 337]], [[true, 26], [true, 34], [false, 337]], [[true, 26], [false, 34], [true, 337]], [[true, 34], [false, 26], [true, 337]], [[false, 337]], [[false, 27], [false, 35], [false, 338]], [[true, 27], [true, 35], [false, 338]], [[true, 27], [false, 35], [true, 338]], [[true, 35], [false, 27], [true, 338]], [[false, 338]], [[false, 28], [false, 36], [false, 339]], [[true, 28], [true, 36], [false, 339]], [[true, 28], [false, 36], [true, 339]], [[true, 36], [false, 28], [true, 339]], [[false, 339]], [[false, 29], [false, 37], [false, 340]], [[true, 29], [true, 37], [false, 340]], [[true, 29], [false, 37], [true, 340]], [[true, 37], [false, 29], [true, 340]], [[false, 340]], [[false, 31], [false, 39], [false, 341]], [[true, 31], [true, 39], [false, 341]], [[true, 31], [false, 39], [true, 341]], [[true, 39], [false, 31], [true, 341]], [[false, 341]], [[true, 30], [false, 38], [false, 342]], [[true, 38], [false, 30], [false, 342]], [[true, 342], [false, 30], [false, 38]], [[true, 30], [true, 38], [true, 342]], [[false, 342]], [[false, 33], [false, 41], [false, 343]], [[true, 33], [true, 41], [false, 343]], [[true, 33], [false, 41], [true, 343]], [[true, 41], [false, 33], [true, 343]], [[false, 343]], [[false, 35], [false, 43], [false, 344]], [[true, 35], [true, 43], [false, 344]], [[true, 35], [false, 43], [true, 344]], [[true, 43], [false, 35], [true, 344]], [[false, 344]], [[false, 36], [false, 44], [false, 345]], [[true, 36], [true, 44], [false, 345]], [[true, 36], [false, 44], [true, 345]], [[true, 44], [false, 36], [true, 345]], [[false, 345]], [[false, 37], [false, 45], [false, 346]], [[true, 37], [true, 45], [false, 346]], [[true, 37], [false, 45], [true, 346]], [[true, 45], [false, 37], [true, 346]], [[false, 346]], [[false, 38], [false, 46], [false, 347]], [[true, 38], [true, 46], [false, 347]], [[true, 38], [false, 46], [true, 347]], [[true, 46], [false, 38], [true, 347]], [[false, 347]], [[false, 39], [false, 47], [false, 348]], [[true, 39], [true, 47], [false, 348]], [[true, 39], [false, 47], [true, 348]], [[true, 47], [false, 39], [true, 348]], [[false, 348]], [[true, 34], [false, 42], [false, 349]], [[true, 42], [false, 34], [false, 349]], [[true, 349], [false, 34], [false, 42]], [[true, 34], [true, 42], [true, 349]], [[false, 349]], [[true, 41], [false, 49], [false, 350]], [[true, 49], [false, 41], [false, 350]], [[true, 350], [false, 41], [false, 49]], [[true, 41], [true, 49], [true, 350]], [[false, 350]], [[true, 42], [false, 50], [false, 351]], [[true, 50], [false, 42], [false, 351]], [[true, 351], [false, 42], [false, 50]], [[true, 42], [true, 50], [true, 351]], [[false, 351]], [[false, 43], [false, 51], [false, 352]], [[true, 43], [true, 51], [false, 352]], [[true, 43], [false, 51], [true, 352]], [[true, 51], [false, 43], [true, 352]], [[false, 352]], [[false, 44], [false, 52], [false, 353]], [[true, 44], [true, 52], [false, 353]], [[true, 44], [false, 52], [true, 353]], [[true, 52], [false, 44], [true, 353]], [[false, 353]], [[false, 45], [false, 53], [false, 354]], [[true, 45], [true, 53], [false, 354]], [[true, 45], [false, 53], [true, 354]], [[true, 53], [false, 45], [true, 354]], [[false, 354]], [[false, 46], [false, 54], [false, 355]], [[true, 46], [true, 54], [false, 355]], [[true, 46], [false, 54], [true, 355]], [[true, 54], [false, 46], [true, 355]], [[false, 355]], [[false, 47], [false, 55], [false, 356]], [[true, 47], [true, 55], [false, 356]], [[true, 47], [false, 55], [true, 356]], [[true, 55], [false, 47], [true, 356]], [[false, 356]], [[false, 49], [false, 57], [false, 357]], [[true, 49], [true, 57], [false, 357]], [[true, 49], [false, 57], [true, 357]], [[false, 49], [true, 57], [true, 357]], [[false, 357]], [[false, 48], [false, 56], [false, 358]], [[true, 48], [true, 56], [false, 358]], [[true, 48], [false, 56], [true, 358]], [[false, 48], [true, 56], [true, 358]], [[false, 358]], [[false, 52], [false, 60], [false, 359]], [[true, 52], [true, 60], [false, 359]], [[true, 52], [false, 60], [true, 359]], [[true, 60], [false, 52], [true, 359]], [[false, 359]], [[false, 53], [false, 61], [false, 360]], [[true, 53], [true, 61], [false, 360]], [[true, 53], [false, 61], [true, 360]], [[true, 61], [false, 53], [true, 360]], [[false, 360]], [[false, 54], [false, 62], [false, 361]], [[true, 54], [true, 62], [false, 361]], [[true, 54], [false, 62], [true, 361]], [[true, 62], [false, 54], [true, 361]], [[false, 361]], [[false, 55], [false, 63], [false, 362]], [[true, 55], [true, 63], [false, 362]], [[true, 55], [false, 63], [true, 362]], [[true, 63], [false, 55], [true, 362]], [[false, 362]], [[true, 51], [false, 59], [false, 363]], [[true, 59], [false, 51], [false, 363]], [[true, 363], [false, 51], [false, 59]], [[true, 51], [true, 59], [true, 363]], [[false, 363]], [[false, 62], [false, 70], [false, 364]], [[true, 62], [true, 70], [false, 364]], [[true, 62], [false, 70], [true, 364]], [[true, 70], [false, 62], [true, 364]], [[false, 364]], [[false, 63], [false, 71], [false, 365]], [[true, 63], [true, 71], [false, 365]], [[true, 63], [false, 71], [true, 365]], [[true, 71], [false, 63], [true, 365]], [[false, 365]], [[true, 56], [false, 64], [false, 366]], [[true, 64], [false, 56], [false, 366]], [[true, 366], [false, 56], [false, 64]], [[true, 56], [true, 64], [true, 366]], [[false, 366]], [[true, 58], [false, 66], [false, 367]], [[true, 66], [false, 58], [false, 367]], [[true, 367], [false, 58], [false, 66]], [[true, 58], [true, 66], [true, 367]], [[false, 367]], [[true, 59], [false, 67], [false, 368]], [[true, 67], [false, 59], [false, 368]], [[true, 368], [false, 59], [false, 67]], [[true, 59], [true, 67], [true, 368]], [[false, 368]], [[true, 60], [false, 68], [false, 369]], [[true, 68], [false, 60], [false, 369]], [[true, 369], [false, 60], [false, 68]], [[true, 60], [true, 68], [true, 369]], [[false, 369]], [[true, 61], [false, 69], [false, 370]], [[true, 69], [false, 61], [false, 370]], [[true, 370], [false, 61], [false, 69]], [[true, 61], [true, 69], [true, 370]], [[false, 370]], [[false, 66], [false, 74], [false, 371]], [[true, 66], [true, 74], [false, 371]], [[true, 66], [false, 74], [true, 371]], [[false, 66], [true, 74], [true, 371]], [[false, 371]], [[false, 64], [false, 72], [false, 372]], [[true, 64], [true, 72], [false, 372]], [[true, 64], [false, 72], [true, 372]], [[false, 64], [true, 72], [true, 372]], [[false, 372]], [[false, 69], [false, 77], [false, 373]], [[true, 69], [true, 77], [false, 373]], [[true, 69], [false, 77], [true, 373]], [[true, 77], [false, 69], [true, 373]], [[false, 373]], [[false, 70], [false, 78], [false, 374]], [[true, 70], [true, 78], [false, 374]], [[true, 70], [false, 78], [true, 374]], [[true, 78], [false, 70], [true, 374]], [[false, 374]], [[false, 71], [false, 79], [false, 375]], [[true, 71], [true, 79], [false, 375]], [[true, 71], [false, 79], [true, 375]], [[true, 79], [false, 71], [true, 375]], [[false, 375]], [[true, 65], [false, 73], [false, 376]], [[true, 73], [false, 65], [false, 376]], [[true, 376], [false, 65], [false, 73]], [[true, 65], [true, 73], [true, 376]], [[false, 376]], [[true, 67], [false, 75], [false, 377]], [[true, 75], [false, 67], [false, 377]], [[true, 377], [false, 67], [false, 75]], [[true, 67], [true, 75], [true, 377]], [[false, 377]], [[false, 76], [false, 84], [false, 378]], [[true, 76], [true, 84], [false, 378]], [[true, 76], [false, 84], [true, 378]], [[true, 84], [false, 76], [true, 378]], [[false, 378]], [[false, 77], [false, 85], [false, 379]], [[true, 77], [true, 85], [false, 379]], [[true, 77], [false, 85], [true, 379]], [[true, 85], [false, 77], [true, 379]], [[false, 379]], [[false, 78], [false, 86], [false, 380]], [[true, 78], [true, 86], [false, 380]], [[true, 78], [false, 86], [true, 380]], [[true, 86], [false, 78], [true, 380]], [[false, 380]], [[false, 79], [false, 87], [false, 381]], [[true, 79], [true, 87], [false, 381]], [[true, 79], [false, 87], [true, 381]], [[true, 87], [false, 79], [true, 381]], [[false, 381]], [[true, 72], [false, 80], [false, 382]], [[true, 80], [false, 72], [false, 382]], [[true, 382], [false, 72], [false, 80]], [[true, 72], [true, 80], [true, 382]], [[false, 382]], [[true, 74], [false, 82], [false, 383]], [[true, 82], [false, 74], [false, 383]], [[true, 383], [false, 74], [false, 82]], [[true, 74], [true, 82], [true, 383]], [[false, 383]], [[true, 75], [false, 83], [false, 384]], [[true, 83], [false, 75], [false, 384]], [[true, 384], [false, 75], [false, 83]], [[true, 75], [true, 83], [true, 384]], [[false, 384]], [[false, 83], [false, 91], [false, 385]], [[true, 83], [true, 91], [false, 385]], [[true, 83], [false, 91], [true, 385]], [[true, 91], [false, 83], [true, 385]], [[false, 385]], [[false, 84], [false, 92], [false, 386]], [[true, 84], [true, 92], [false, 386]], [[true, 84], [false, 92], [true, 386]], [[true, 92], [false, 84], [true, 386]], [[false, 386]], [[false, 85], [false, 93], [false, 387]], [[true, 85], [true, 93], [false, 387]], [[true, 85], [false, 93], [true, 387]], [[true, 93], [false, 85], [true, 387]], [[false, 387]], [[false, 86], [false, 94], [false, 388]], [[true, 86], [true, 94], [false, 388]], [[true, 86], [false, 94], [true, 388]], [[true, 94], [false, 86], [true, 388]], [[false, 388]], [[false, 87], [false, 95], [false, 389]], [[true, 87], [true, 95], [false, 389]], [[true, 87], [false, 95], [true, 389]], [[true, 95], [false, 87], [true, 389]], [[false, 389]], [[true, 81], [false, 89], [false, 390]], [[true, 89], [false, 81], [false, 390]], [[true, 390], [false, 81], [false, 89]], [[true, 81], [true, 89], [true, 390]], [[false, 390]], [[true, 82], [false, 90], [false, 391]], [[true, 90], [false, 82], [false, 391]], [[true, 391], [false, 82], [false, 90]], [[true, 82], [true, 90], [true, 391]], [[false, 391]], [[false, 89], [false, 97], [false, 392]], [[true, 89], [true, 97], [false, 392]], [[true, 89], [false, 97], [true, 392]], [[false, 89], [true, 97], [true, 392]], [[false, 392]], [[false, 90], [false, 98], [false, 393]], [[true, 90], [true, 98], [false, 393]], [[true, 90], [false, 98], [true, 393]], [[true, 98], [false, 90], [true, 393]], [[false, 393]], [[false, 93], [false, 101], [false, 394]], [[true, 93], [true, 101], [false, 394]], [[true, 93], [false, 101], [true, 394]], [[true, 101], [false, 93], [true, 394]], [[false, 394]], [[false, 94], [false, 102], [false, 395]], [[true, 94], [true, 102], [false, 395]], [[true, 94], [false, 102], [true, 395]], [[true, 102], [false, 94], [true, 395]], [[false, 395]], [[false, 95], [false, 103], [false, 396]], [[true, 95], [true, 103], [false, 396]], [[true, 95], [false, 103], [true, 396]], [[true, 103], [false, 95], [true, 396]], [[false, 396]], [[true, 91], [false, 99], [false, 397]], [[true, 99], [false, 91], [false, 397]], [[true, 397], [false, 91], [false, 99]], [[true, 91], [true, 99], [true, 397]], [[false, 397]], [[true, 92], [false, 100], [false, 398]], [[true, 100], [false, 92], [false, 398]], [[true, 398], [false, 92], [false, 100]], [[true, 92], [true, 100], [true, 398]], [[false, 398]], [[false, 102], [false, 110], [false, 399]], [[true, 102], [true, 110], [false, 399]], [[true, 102], [false, 110], [true, 399]], [[true, 110], [false, 102], [true, 399]], [[false, 399]], [[false, 103], [false, 111], [false, 400]], [[true, 103], [true, 111], [false, 400]], [[true, 103], [false, 111], [true, 400]], [[true, 111], [false, 103], [true, 400]], [[false, 400]], [[true, 96], [false, 104], [false, 401]], [[true, 104], [false, 96], [false, 401]], [[true, 401], [false, 96], [false, 104]], [[true, 96], [true, 104], [true, 401]], [[false, 401]], [[true, 98], [false, 106], [false, 402]], [[true, 106], [false, 98], [false, 402]], [[true, 402], [false, 98], [false, 106]], [[true, 98], [true, 106], [true, 402]], [[false, 402]], [[true, 99], [false, 107], [false, 403]], [[true, 107], [false, 99], [false, 403]], [[true, 403], [false, 99], [false, 107]], [[true, 99], [true, 107], [true, 403]], [[false, 403]], [[true, 100], [false, 108], [false, 404]], [[true, 108], [false, 100], [false, 404]], [[true, 404], [false, 100], [false, 108]], [[true, 100], [true, 108], [true, 404]], [[false, 404]], [[true, 101], [false, 109], [false, 405]], [[true, 109], [false, 101], [false, 405]], [[true, 405], [false, 101], [false, 109]], [[true, 101], [true, 109], [true, 405]], [[false, 405]], [[false, 109], [false, 117], [false, 406]], [[true, 109], [true, 117], [false, 406]], [[true, 109], [false, 117], [true, 406]], [[true, 117], [false, 109], [true, 406]], [[false, 406]], [[false, 110], [false, 118], [false, 407]], [[true, 110], [true, 118], [false, 407]], [[true, 110], [false, 118], [true, 407]], [[true, 118], [false, 110], [true, 407]], [[false, 407]], [[false, 111], [false, 119], [false, 408]], [[true, 111], [true, 119], [false, 408]], [[true, 111], [false, 119], [true, 408]], [[true, 119], [false, 111], [true, 408]], [[false, 408]], [[false, 112], [true, 104], [false, 409]], [[true, 112], [false, 104], [false, 409]], [[true, 409], [false, 104], [false, 112]], [[true, 104], [true, 112], [true, 409]], [[false, 409]], [[true, 105], [false, 113], [false, 410]], [[true, 113], [false, 105], [false, 410]], [[true, 410], [false, 105], [false, 113]], [[true, 105], [true, 113], [true, 410]], [[false, 410]], [[true, 107], [false, 115], [false, 411]], [[true, 115], [false, 107], [false, 411]], [[true, 411], [false, 107], [false, 115]], [[true, 107], [true, 115], [true, 411]], [[false, 411]], [[true, 108], [false, 116], [false, 412]], [[true, 116], [false, 108], [false, 412]], [[true, 412], [false, 108], [false, 116]], [[true, 108], [true, 116], [true, 412]], [[false, 412]], [[false, 115], [false, 123], [false, 413]], [[true, 115], [true, 123], [false, 413]], [[true, 115], [false, 123], [true, 413]], [[false, 115], [true, 123], [true, 413]], [[false, 413]], [[false, 116], [false, 124], [false, 414]], [[true, 116], [true, 124], [false, 414]], [[true, 116], [false, 124], [true, 414]], [[true, 124], [false, 116], [true, 414]], [[false, 414]], [[false, 118], [false, 126], [false, 415]], [[true, 118], [true, 126], [false, 415]], [[true, 118], [false, 126], [true, 415]], [[true, 126], [false, 118], [true, 415]], [[false, 415]], [[false, 119], [false, 127], [false, 416]], [[true, 119], [true, 127], [false, 416]], [[true, 119], [false, 127], [true, 416]], [[true, 127], [false, 119], [true, 416]], [[false, 416]], [[false, 121], [true, 113], [false, 417]], [[true, 121], [false, 113], [false, 417]], [[true, 417], [false, 113], [false, 121]], [[true, 113], [true, 121], [true, 417]], [[false, 417]], [[false, 122], [true, 114], [false, 418]], [[true, 122], [false, 114], [false, 418]], [[true, 418], [false, 114], [false, 122]], [[true, 114], [true, 122], [true, 418]], [[false, 418]], [[true, 117], [false, 125], [false, 419]], [[true, 125], [false, 117], [false, 419]], [[true, 419], [false, 117], [false, 125]], [[true, 117], [true, 125], [true, 419]], [[false, 419]], [[false, 121], [false, 129], [false, 420]], [[true, 121], [true, 129], [false, 420]], [[true, 121], [false, 129], [true, 420]], [[false, 121], [true, 129], [true, 420]], [[false, 420]], [[false, 120], [false, 128], [false, 421]], [[true, 120], [true, 128], [false, 421]], [[true, 120], [false, 128], [true, 421]], [[false, 120], [true, 128], [true, 421]], [[false, 421]], [[false, 125], [false, 133], [false, 422]], [[true, 125], [true, 133], [false, 422]], [[true, 125], [false, 133], [true, 422]], [[true, 133], [false, 125], [true, 422]], [[false, 422]], [[false, 126], [false, 134], [false, 423]], [[true, 126], [true, 134], [false, 423]], [[true, 126], [false, 134], [true, 423]], [[true, 134], [false, 126], [true, 423]], [[false, 423]], [[false, 127], [false, 135], [false, 424]], [[true, 127], [true, 135], [false, 424]], [[true, 127], [false, 135], [true, 424]], [[true, 135], [false, 127], [true, 424]], [[false, 424]], [[true, 123], [false, 131], [false, 425]], [[true, 131], [false, 123], [false, 425]], [[true, 425], [false, 123], [false, 131]], [[true, 123], [true, 131], [true, 425]], [[false, 425]], [[true, 124], [false, 132], [false, 426]], [[true, 132], [false, 124], [false, 426]], [[true, 426], [false, 124], [false, 132]], [[true, 124], [true, 132], [true, 426]], [[false, 426]], [[false, 139], [false, 131], [false, 427]], [[true, 131], [true, 139], [false, 427]], [[true, 131], [false, 139], [true, 427]], [[true, 139], [false, 131], [true, 427]], [[false, 427]], [[false, 134], [false, 142], [false, 428]], [[true, 134], [true, 142], [false, 428]], [[true, 134], [false, 142], [true, 428]], [[true, 142], [false, 134], [true, 428]], [[false, 428]], [[false, 135], [false, 143], [false, 429]], [[true, 135], [true, 143], [false, 429]], [[true, 135], [false, 143], [true, 429]], [[true, 143], [false, 135], [true, 429]], [[false, 429]], [[true, 128], [false, 136], [false, 430]], [[true, 136], [false, 128], [false, 430]], [[true, 430], [false, 128], [false, 136]], [[true, 128], [true, 136], [true, 430]], [[false, 430]], [[true, 130], [false, 138], [false, 431]], [[true, 138], [false, 130], [false, 431]], [[true, 431], [false, 130], [false, 138]], [[true, 130], [true, 138], [true, 431]], [[false, 431]], [[true, 132], [false, 140], [false, 432]], [[true, 140], [false, 132], [false, 432]], [[true, 432], [false, 132], [false, 140]], [[true, 132], [true, 140], [true, 432]], [[false, 432]], [[true, 133], [false, 141], [false, 433]], [[true, 141], [false, 133], [false, 433]], [[true, 433], [false, 133], [false, 141]], [[true, 133], [true, 141], [true, 433]], [[false, 433]], [[false, 138], [false, 146], [false, 434]], [[true, 138], [true, 146], [false, 434]], [[true, 138], [false, 146], [true, 434]], [[false, 138], [true, 146], [true, 434]], [[false, 434]], [[false, 136], [false, 144], [false, 435]], [[true, 136], [true, 144], [false, 435]], [[true, 136], [false, 144], [true, 435]], [[false, 136], [true, 144], [true, 435]], [[false, 435]], [[false, 140], [false, 148], [false, 436]], [[true, 140], [true, 148], [false, 436]], [[true, 140], [false, 148], [true, 436]], [[true, 148], [false, 140], [true, 436]], [[false, 436]], [[false, 141], [false, 149], [false, 437]], [[true, 141], [true, 149], [false, 437]], [[true, 141], [false, 149], [true, 437]], [[true, 149], [false, 141], [true, 437]], [[false, 437]], [[false, 143], [false, 151], [false, 438]], [[true, 143], [true, 151], [false, 438]], [[true, 143], [false, 151], [true, 438]], [[true, 151], [false, 143], [true, 438]], [[false, 438]], [[true, 137], [false, 145], [false, 439]], [[true, 145], [false, 137], [false, 439]], [[true, 439], [false, 137], [false, 145]], [[true, 137], [true, 145], [true, 439]], [[false, 439]], [[true, 142], [false, 150], [false, 440]], [[true, 150], [false, 142], [false, 440]], [[true, 440], [false, 142], [false, 150]], [[true, 142], [true, 150], [true, 440]], [[false, 440]], [[false, 147], [false, 155], [false, 441]], [[true, 147], [true, 155], [false, 441]], [[true, 147], [false, 155], [true, 441]], [[true, 155], [false, 147], [true, 441]], [[false, 441]], [[false, 148], [false, 156], [false, 442]], [[true, 148], [true, 156], [false, 442]], [[true, 148], [false, 156], [true, 442]], [[true, 156], [false, 148], [true, 442]], [[false, 442]], [[false, 149], [false, 157], [false, 443]], [[true, 149], [true, 157], [false, 443]], [[true, 149], [false, 157], [true, 443]], [[true, 157], [false, 149], [true, 443]], [[false, 443]], [[false, 151], [false, 159], [false, 444]], [[true, 151], [true, 159], [false, 444]], [[true, 151], [false, 159], [true, 444]], [[true, 159], [false, 151], [true, 444]], [[false, 444]], [[true, 145], [false, 153], [false, 445]], [[true, 153], [false, 145], [false, 445]], [[true, 445], [false, 145], [false, 153]], [[true, 145], [true, 153], [true, 445]], [[false, 445]], [[true, 146], [false, 154], [false, 446]], [[true, 154], [false, 146], [false, 446]], [[true, 446], [false, 146], [false, 154]], [[true, 146], [true, 154], [true, 446]], [[false, 446]], [[true, 150], [false, 158], [false, 447]], [[true, 158], [false, 150], [false, 447]], [[true, 447], [false, 150], [false, 158]], [[true, 150], [true, 158], [true, 447]], [[false, 447]], [[false, 155], [false, 163], [false, 448]], [[true, 155], [true, 163], [false, 448]], [[true, 155], [false, 163], [true, 448]], [[true, 163], [false, 155], [true, 448]], [[false, 448]], [[false, 156], [false, 164], [false, 449]], [[true, 156], [true, 164], [false, 449]], [[true, 156], [false, 164], [true, 449]], [[true, 164], [false, 156], [true, 449]], [[false, 449]], [[false, 157], [false, 165], [false, 450]], [[true, 157], [true, 165], [false, 450]], [[true, 157], [false, 165], [true, 450]], [[true, 165], [false, 157], [true, 450]], [[false, 450]], [[false, 159], [false, 167], [false, 451]], [[true, 159], [true, 167], [false, 451]], [[true, 159], [false, 167], [true, 451]], [[true, 167], [false, 159], [true, 451]], [[false, 451]], [[true, 152], [false, 160], [false, 452]], [[true, 160], [false, 152], [false, 452]], [[true, 452], [false, 152], [false, 160]], [[true, 152], [true, 160], [true, 452]], [[false, 452]], [[true, 154], [false, 162], [false, 453]], [[true, 162], [false, 154], [false, 453]], [[true, 453], [false, 154], [false, 162]], [[true, 154], [true, 162], [true, 453]], [[false, 453]], [[true, 158], [false, 166], [false, 454]], [[true, 166], [false, 158], [false, 454]], [[true, 454], [false, 158], [false, 166]], [[true, 158], [true, 166], [true, 454]], [[false, 454]], [[false, 162], [false, 170], [false, 455]], [[true, 162], [true, 170], [false, 455]], [[true, 162], [false, 170], [true, 455]], [[false, 162], [true, 170], [true, 455]], [[false, 455]], [[false, 163], [false, 171], [false, 456]], [[true, 163], [true, 171], [false, 456]], [[true, 163], [false, 171], [true, 456]], [[true, 171], [false, 163], [true, 456]], [[false, 456]], [[false, 164], [false, 172], [false, 457]], [[true, 164], [true, 172], [false, 457]], [[true, 164], [false, 172], [true, 457]], [[true, 172], [false, 164], [true, 457]], [[false, 457]], [[false, 165], [false, 173], [false, 458]], [[true, 165], [true, 173], [false, 458]], [[true, 165], [false, 173], [true, 458]], [[true, 173], [false, 165], [true, 458]], [[false, 458]], [[false, 167], [false, 175], [false, 459]], [[true, 167], [true, 175], [false, 459]], [[true, 167], [false, 175], [true, 459]], [[true, 175], [false, 167], [true, 459]], [[false, 459]], [[true, 160], [false, 168], [false, 460]], [[true, 168], [false, 160], [false, 460]], [[true, 460], [false, 160], [false, 168]], [[true, 160], [true, 168], [true, 460]], [[false, 460]], [[true, 166], [false, 174], [false, 461]], [[true, 174], [false, 166], [false, 461]], [[true, 461], [false, 166], [false, 174]], [[true, 166], [true, 174], [true, 461]], [[false, 461]], [[false, 179], [false, 171], [false, 462]], [[true, 171], [true, 179], [false, 462]], [[true, 171], [false, 179], [true, 462]], [[true, 179], [false, 171], [true, 462]], [[false, 462]], [[false, 173], [false, 181], [false, 463]], [[true, 173], [true, 181], [false, 463]], [[true, 173], [false, 181], [true, 463]], [[true, 181], [false, 173], [true, 463]], [[false, 463]], [[false, 175], [false, 183], [false, 464]], [[true, 175], [true, 183], [false, 464]], [[true, 175], [false, 183], [true, 464]], [[true, 183], [false, 175], [true, 464]], [[false, 464]], [[true, 168], [false, 176], [false, 465]], [[true, 176], [false, 168], [false, 465]], [[true, 465], [false, 168], [false, 176]], [[true, 168], [true, 176], [true, 465]], [[false, 465]], [[true, 170], [false, 178], [false, 466]], [[true, 178], [false, 170], [false, 466]], [[true, 466], [false, 170], [false, 178]], [[true, 170], [true, 178], [true, 466]], [[false, 466]], [[true, 172], [false, 180], [false, 467]], [[true, 180], [false, 172], [false, 467]], [[true, 467], [false, 172], [false, 180]], [[true, 172], [true, 180], [true, 467]], [[false, 467]], [[true, 174], [false, 182], [false, 468]], [[true, 182], [false, 174], [false, 468]], [[true, 468], [false, 174], [false, 182]], [[true, 174], [true, 182], [true, 468]], [[false, 468]], [[false, 177], [false, 185], [false, 469]], [[true, 177], [true, 185], [false, 469]], [[true, 177], [false, 185], [true, 469]], [[false, 177], [true, 185], [true, 469]], [[false, 469]], [[false, 176], [false, 184], [false, 470]], [[true, 176], [true, 184], [false, 470]], [[true, 176], [false, 184], [true, 470]], [[false, 176], [true, 184], [true, 470]], [[false, 470]], [[false, 181], [false, 189], [false, 471]], [[true, 181], [true, 189], [false, 471]], [[true, 181], [false, 189], [true, 471]], [[true, 189], [false, 181], [true, 471]], [[false, 471]], [[false, 183], [false, 191], [false, 472]], [[true, 183], [true, 191], [false, 472]], [[true, 183], [false, 191], [true, 472]], [[true, 191], [false, 183], [true, 472]], [[false, 472]], [[true, 178], [false, 186], [false, 473]], [[true, 186], [false, 178], [false, 473]], [[true, 473], [false, 178], [false, 186]], [[true, 178], [true, 186], [true, 473]], [[false, 473]], [[true, 180], [false, 188], [false, 474]], [[true, 188], [false, 180], [false, 474]], [[true, 474], [false, 180], [false, 188]], [[true, 180], [true, 188], [true, 474]], [[false, 474]], [[true, 182], [false, 190], [false, 475]], [[true, 190], [false, 182], [false, 475]], [[true, 475], [false, 182], [false, 190]], [[true, 182], [true, 190], [true, 475]], [[false, 475]], [[false, 184], [false, 192], [false, 476]], [[true, 184], [true, 192], [false, 476]], [[true, 184], [false, 192], [true, 476]], [[false, 184], [true, 192], [true, 476]], [[false, 476]], [[false, 188], [false, 196], [false, 477]], [[true, 188], [true, 196], [false, 477]], [[true, 188], [false, 196], [true, 477]], [[true, 196], [false, 188], [true, 477]], [[false, 477]], [[false, 190], [false, 198], [false, 478]], [[true, 190], [true, 198], [false, 478]], [[true, 190], [false, 198], [true, 478]], [[true, 198], [false, 190], [true, 478]], [[false, 478]], [[false, 191], [false, 199], [false, 479]], [[true, 191], [true, 199], [false, 479]], [[true, 191], [false, 199], [true, 479]], [[true, 199], [false, 191], [true, 479]], [[false, 479]], [[false, 194], [true, 186], [false, 480]], [[true, 194], [false, 186], [false, 480]], [[true, 480], [false, 186], [false, 194]], [[true, 186], [true, 194], [true, 480]], [[false, 480]], [[true, 187], [false, 195], [false, 481]], [[true, 195], [false, 187], [false, 481]], [[true, 481], [false, 187], [false, 195]], [[true, 187], [true, 195], [true, 481]], [[false, 481]], [[true, 189], [false, 197], [false, 482]], [[true, 197], [false, 189], [false, 482]], [[true, 482], [false, 189], [false, 197]], [[true, 189], [true, 197], [true, 482]], [[false, 482]], [[false, 196], [false, 204], [false, 483]], [[true, 196], [true, 204], [false, 483]], [[true, 196], [false, 204], [true, 483]], [[true, 204], [false, 196], [true, 483]], [[false, 483]], [[false, 199], [false, 207], [false, 484]], [[true, 199], [true, 207], [false, 484]], [[true, 199], [false, 207], [true, 484]], [[true, 207], [false, 199], [true, 484]], [[false, 484]], [[true, 192], [false, 200], [false, 485]], [[true, 200], [false, 192], [false, 485]], [[true, 485], [false, 192], [false, 200]], [[true, 192], [true, 200], [true, 485]], [[false, 485]], [[true, 193], [false, 201], [false, 486]], [[true, 201], [false, 193], [false, 486]], [[true, 486], [false, 193], [false, 201]], [[true, 193], [true, 201], [true, 486]], [[false, 486]], [[true, 195], [false, 203], [false, 487]], [[true, 203], [false, 195], [false, 487]], [[true, 487], [false, 195], [false, 203]], [[true, 195], [true, 203], [true, 487]], [[false, 487]], [[true, 197], [false, 205], [false, 488]], [[true, 205], [false, 197], [false, 488]], [[true, 488], [false, 197], [false, 205]], [[true, 197], [true, 205], [true, 488]], [[false, 488]], [[true, 198], [false, 206], [false, 489]], [[true, 206], [false, 198], [false, 489]], [[true, 489], [false, 198], [false, 206]], [[true, 198], [true, 206], [true, 489]], [[false, 489]], [[false, 201], [false, 209], [false, 490]], [[true, 201], [true, 209], [false, 490]], [[true, 201], [false, 209], [true, 490]], [[false, 201], [true, 209], [true, 490]], [[false, 490]], [[false, 200], [false, 208], [false, 491]], [[true, 200], [true, 208], [false, 491]], [[true, 200], [false, 208], [true, 491]], [[false, 200], [true, 208], [true, 491]], [[false, 491]], [[false, 205], [false, 213], [false, 492]], [[true, 205], [true, 213], [false, 492]], [[true, 205], [false, 213], [true, 492]], [[true, 213], [false, 205], [true, 492]], [[false, 492]], [[false, 207], [false, 215], [false, 493]], [[true, 207], [true, 215], [false, 493]], [[true, 207], [false, 215], [true, 493]], [[true, 215], [false, 207], [true, 493]], [[false, 493]], [[true, 203], [false, 211], [false, 494]], [[true, 211], [false, 203], [false, 494]], [[true, 494], [false, 203], [false, 211]], [[true, 203], [true, 211], [true, 494]], [[false, 494]], [[true, 204], [false, 212], [false, 495]], [[true, 212], [false, 204], [false, 495]], [[true, 495], [false, 204], [false, 212]], [[true, 204], [true, 212], [true, 495]], [[false, 495]], [[true, 206], [false, 214], [false, 496]], [[true, 214], [false, 206], [false, 496]], [[true, 496], [false, 206], [false, 214]], [[true, 206], [true, 214], [true, 496]], [[false, 496]], [[false, 212], [false, 220], [false, 497]], [[true, 212], [true, 220], [false, 497]], [[true, 212], [false, 220], [true, 497]], [[true, 220], [false, 212], [true, 497]], [[false, 497]], [[false, 213], [false, 221], [false, 498]], [[true, 213], [true, 221], [false, 498]], [[true, 213], [false, 221], [true, 498]], [[true, 221], [false, 213], [true, 498]], [[false, 498]], [[false, 214], [false, 222], [false, 499]], [[true, 214], [true, 222], [false, 499]], [[true, 214], [false, 222], [true, 499]], [[true, 222], [false, 214], [true, 499]], [[false, 499]], [[false, 215], [false, 223], [false, 500]], [[true, 215], [true, 223], [false, 500]], [[true, 215], [false, 223], [true, 500]], [[true, 223], [false, 215], [true, 500]], [[false, 500]], [[true, 208], [false, 216], [false, 501]], [[true, 216], [false, 208], [false, 501]], [[true, 501], [false, 208], [false, 216]], [[true, 208], [true, 216], [true, 501]], [[false, 501]], [[true, 209], [false, 217], [false, 502]], [[true, 217], [false, 209], [false, 502]], [[true, 502], [false, 209], [false, 217]], [[true, 209], [true, 217], [true, 502]], [[false, 502]], [[true, 211], [false, 219], [false, 503]], [[true, 219], [false, 211], [false, 503]], [[true, 503], [false, 211], [false, 219]], [[true, 211], [true, 219], [true, 503]], [[false, 503]], [[false, 221], [false, 229], [false, 504]], [[true, 221], [true, 229], [false, 504]], [[true, 221], [false, 229], [true, 504]], [[true, 229], [false, 221], [true, 504]], [[false, 504]], [[false, 223], [false, 231], [false, 505]], [[true, 223], [true, 231], [false, 505]], [[true, 223], [false, 231], [true, 505]], [[true, 231], [false, 223], [true, 505]], [[false, 505]], [[true, 216], [false, 224], [false, 506]], [[true, 224], [false, 216], [false, 506]], [[true, 506], [false, 216], [false, 224]], [[true, 216], [true, 224], [true, 506]], [[false, 506]], [[true, 217], [false, 225], [false, 507]], [[true, 225], [false, 217], [false, 507]], [[true, 507], [false, 217], [false, 225]], [[true, 217], [true, 225], [true, 507]], [[false, 507]], [[false, 226], [true, 218], [false, 508]], [[true, 226], [false, 218], [false, 508]], [[true, 508], [false, 218], [false, 226]], [[true, 218], [true, 226], [true, 508]], [[false, 508]], [[true, 220], [false, 228], [false, 509]], [[true, 228], [false, 220], [false, 509]], [[true, 509], [false, 220], [false, 228]], [[true, 220], [true, 228], [true, 509]], [[false, 509]], [[true, 222], [false, 230], [false, 510]], [[true, 230], [false, 222], [false, 510]], [[true, 510], [false, 222], [false, 230]], [[true, 222], [true, 230], [true, 510]], [[false, 510]], [[false, 226], [false, 234], [false, 511]], [[true, 226], [true, 234], [false, 511]], [[true, 226], [false, 234], [true, 511]], [[false, 226], [true, 234], [true, 511]], [[false, 511]], [[false, 228], [false, 236], [false, 512]], [[true, 228], [true, 236], [false, 512]], [[true, 228], [false, 236], [true, 512]], [[false, 228], [true, 236], [true, 512]], [[false, 512]], [[false, 224], [false, 232], [false, 513]], [[true, 224], [true, 232], [false, 513]], [[true, 224], [false, 232], [true, 513]], [[false, 224], [true, 232], [true, 513]], [[false, 513]], [[false, 229], [false, 237], [false, 514]], [[true, 229], [true, 237], [false, 514]], [[true, 229], [false, 237], [true, 514]], [[true, 237], [false, 229], [true, 514]], [[false, 514]], [[false, 231], [false, 239], [false, 515]], [[true, 231], [true, 239], [false, 515]], [[true, 231], [false, 239], [true, 515]], [[true, 239], [false, 231], [true, 515]], [[false, 515]], [[true, 225], [false, 233], [false, 516]], [[true, 233], [false, 225], [false, 516]], [[true, 516], [false, 225], [false, 233]], [[true, 225], [true, 233], [true, 516]], [[false, 516]], [[true, 230], [false, 238], [false, 517]], [[true, 238], [false, 230], [false, 517]], [[true, 517], [false, 230], [false, 238]], [[true, 230], [true, 238], [true, 517]], [[false, 517]], [[false, 235], [false, 243], [false, 518]], [[true, 235], [true, 243], [false, 518]], [[true, 235], [false, 243], [true, 518]], [[true, 243], [false, 235], [true, 518]], [[false, 518]], [[false, 236], [false, 244], [false, 519]], [[true, 236], [true, 244], [false, 519]], [[true, 236], [false, 244], [true, 519]], [[true, 244], [false, 236], [true, 519]], [[false, 519]], [[false, 237], [false, 245], [false, 520]], [[true, 237], [true, 245], [false, 520]], [[true, 237], [false, 245], [true, 520]], [[true, 245], [false, 237], [true, 520]], [[false, 520]], [[false, 239], [false, 247], [false, 521]], [[true, 239], [true, 247], [false, 521]], [[true, 239], [false, 247], [true, 521]], [[true, 247], [false, 239], [true, 521]], [[false, 521]], [[true, 232], [false, 240], [false, 522]], [[true, 240], [false, 232], [false, 522]], [[true, 522], [false, 232], [false, 240]], [[true, 232], [true, 240], [true, 522]], [[false, 522]], [[false, 241], [true, 233], [false, 523]], [[true, 241], [false, 233], [false, 523]], [[true, 523], [false, 233], [false, 241]], [[true, 233], [true, 241], [true, 523]], [[false, 523]], [[true, 238], [false, 246], [false, 524]], [[true, 246], [false, 238], [false, 524]], [[true, 524], [false, 238], [false, 246]], [[true, 238], [true, 246], [true, 524]], [[false, 524]], [[false, 243], [false, 251], [false, 525]], [[true, 243], [true, 251], [false, 525]], [[true, 243], [false, 251], [true, 525]], [[true, 251], [false, 243], [true, 525]], [[false, 525]], [[false, 244], [false, 252], [false, 526]], [[true, 244], [true, 252], [false, 526]], [[true, 244], [false, 252], [true, 526]], [[true, 252], [false, 244], [true, 526]], [[false, 526]], [[false, 245], [false, 253], [false, 527]], [[true, 245], [true, 253], [false, 527]], [[true, 245], [false, 253], [true, 527]], [[true, 253], [false, 245], [true, 527]], [[false, 527]], [[false, 247], [false, 255], [false, 528]], [[true, 247], [true, 255], [false, 528]], [[true, 247], [false, 255], [true, 528]], [[true, 255], [false, 247], [true, 528]], [[false, 528]], [[true, 240], [false, 248], [false, 529]], [[true, 248], [false, 240], [false, 529]], [[true, 529], [false, 240], [false, 248]], [[true, 240], [true, 248], [true, 529]], [[false, 529]], [[true, 242], [false, 250], [false, 530]], [[true, 250], [false, 242], [false, 530]], [[true, 530], [false, 242], [false, 250]], [[true, 242], [true, 250], [true, 530]], [[false, 530]], [[true, 246], [false, 254], [false, 531]], [[true, 254], [false, 246], [false, 531]], [[true, 531], [false, 246], [false, 254]], [[true, 246], [true, 254], [true, 531]], [[false, 531]], [[false, 248], [false, 256], [false, 532]], [[true, 248], [true, 256], [false, 532]], [[true, 248], [false, 256], [true, 532]], [[false, 248], [true, 256], [true, 532]], [[false, 532]], [[false, 253], [false, 261], [false, 533]], [[true, 253], [true, 261], [false, 533]], [[true, 253], [false, 261], [true, 533]], [[true, 261], [false, 253], [true, 533]], [[false, 533]], [[false, 254], [false, 262], [false, 534]], [[true, 254], [true, 262], [false, 534]], [[true, 254], [false, 262], [true, 534]], [[true, 262], [false, 254], [true, 534]], [[false, 534]], [[false, 255], [false, 263], [false, 535]], [[true, 255], [true, 263], [false, 535]], [[true, 255], [false, 263], [true, 535]], [[true, 263], [false, 255], [true, 535]], [[false, 535]], [[true, 250], [false, 258], [false, 536]], [[true, 258], [false, 250], [false, 536]], [[true, 536], [false, 250], [false, 258]], [[true, 250], [true, 258], [true, 536]], [[false, 536]], [[true, 251], [false, 259], [false, 537]], [[true, 259], [false, 251], [false, 537]], [[true, 537], [false, 251], [false, 259]], [[true, 251], [true, 259], [true, 537]], [[false, 537]], [[true, 252], [false, 260], [false, 538]], [[true, 260], [false, 252], [false, 538]], [[true, 538], [false, 252], [false, 260]], [[true, 252], [true, 260], [true, 538]], [[false, 538]], [[false, 259], [false, 267], [false, 539]], [[true, 259], [true, 267], [false, 539]], [[true, 259], [false, 267], [true, 539]], [[true, 267], [false, 259], [true, 539]], [[false, 539]], [[false, 260], [false, 268], [false, 540]], [[true, 260], [true, 268], [false, 540]], [[true, 260], [false, 268], [true, 540]], [[true, 268], [false, 260], [true, 540]], [[false, 540]], [[false, 261], [false, 269], [false, 541]], [[true, 261], [true, 269], [false, 541]], [[true, 261], [false, 269], [true, 541]], [[true, 269], [false, 261], [true, 541]], [[false, 541]], [[false, 262], [false, 270], [false, 542]], [[true, 262], [true, 270], [false, 542]], [[true, 262], [false, 270], [true, 542]], [[true, 270], [false, 262], [true, 542]], [[false, 542]], [[false, 263], [false, 271], [false, 543]], [[true, 263], [true, 271], [false, 543]], [[true, 263], [false, 271], [true, 543]], [[true, 271], [false, 263], [true, 543]], [[false, 543]], [[false, 264], [true, 256], [false, 544]], [[true, 264], [false, 256], [false, 544]], [[true, 544], [false, 256], [false, 264]], [[true, 256], [true, 264], [true, 544]], [[false, 544]], [[true, 258], [false, 266], [false, 545]], [[true, 266], [false, 258], [false, 545]], [[true, 545], [false, 258], [false, 266]], [[true, 258], [true, 266], [true, 545]], [[false, 545]], [[false, 265], [false, 273], [false, 546]], [[true, 265], [true, 273], [false, 546]], [[true, 265], [false, 273], [true, 546]], [[false, 265], [true, 273], [true, 546]], [[false, 546]], [[false, 266], [false, 274], [false, 547]], [[true, 266], [true, 274], [false, 547]], [[true, 266], [false, 274], [true, 547]], [[true, 274], [false, 266], [true, 547]], [[false, 547]], [[false, 267], [false, 275], [false, 548]], [[true, 267], [true, 275], [false, 548]], [[true, 267], [false, 275], [true, 548]], [[true, 275], [false, 267], [true, 548]], [[false, 548]], [[false, 269], [false, 277], [false, 549]], [[true, 269], [true, 277], [false, 549]], [[true, 269], [false, 277], [true, 549]], [[true, 277], [false, 269], [true, 549]], [[false, 549]], [[false, 270], [false, 278], [false, 550]], [[true, 270], [true, 278], [false, 550]], [[true, 270], [false, 278], [true, 550]], [[true, 278], [false, 270], [true, 550]], [[false, 550]], [[false, 271], [false, 279], [false, 551]], [[true, 271], [true, 279], [false, 551]], [[true, 271], [false, 279], [true, 551]], [[true, 279], [false, 271], [true, 551]], [[false, 551]], [[true, 268], [false, 276], [false, 552]], [[true, 276], [false, 268], [false, 552]], [[true, 552], [false, 268], [false, 276]], [[true, 268], [true, 276], [true, 552]], [[false, 552]], [[true, 273], [false, 1], [false, 553]], [[true, 1], [false, 273], [false, 553]], [[false, 1], [false, 273], [true, 553]], [[true, 1], [true, 273], [true, 553]], [[false, 553]], [[false, 2], [true, 274], [false, 554]], [[true, 2], [false, 274], [false, 554]], [[false, 2], [false, 274], [true, 554]], [[true, 2], [true, 274], [true, 554]], [[false, 554]], [[false, 275], [false, 3], [false, 555]], [[true, 3], [true, 275], [false, 555]], [[true, 275], [false, 3], [true, 555]], [[true, 3], [false, 275], [true, 555]], [[false, 555]], [[false, 276], [false, 4], [false, 556]], [[true, 4], [true, 276], [false, 556]], [[true, 276], [false, 4], [true, 556]], [[true, 4], [false, 276], [true, 556]], [[false, 556]], [[false, 5], [false, 277], [false, 557]], [[true, 5], [true, 277], [false, 557]], [[false, 5], [true, 277], [true, 557]], [[true, 5], [false, 277], [true, 557]], [[false, 557]], [[false, 6], [false, 278], [false, 558]], [[true, 6], [true, 278], [false, 558]], [[false, 6], [true, 278], [true, 558]], [[true, 6], [false, 278], [true, 558]], [[false, 558]], [[false, 7], [false, 279], [false, 559]], [[true, 7], [true, 279], [false, 559]], [[false, 7], [true, 279], [true, 559]], [[true, 7], [false, 279], [true, 559]], [[false, 559]]]} \ No newline at end of file diff --git a/jujure/static/q-solved/circuit_linted.json b/jujure/static/q-solved/circuit_linted.json new file mode 100755 index 0000000..b2c671b --- /dev/null +++ b/jujure/static/q-solved/circuit_linted.json @@ -0,0 +1,17414 @@ +{ + "memory": 560, + "ancilla": 1408, + "circuit": [ + [ + [ + false, + 0 + ] + ], + [ + [ + true, + 0 + ], + [ + false, + 8 + ], + [ + false, + 280 + ] + ], + [ + [ + false, + 0 + ], + [ + true, + 8 + ], + [ + false, + 280 + ] + ], + [ + [ + true, + 280 + ], + [ + false, + 0 + ], + [ + false, + 8 + ] + ], + [ + [ + true, + 0 + ], + [ + true, + 8 + ], + [ + true, + 280 + ] + ], + [ + [ + false, + 280 + ] + ], + [ + [ + false, + 19 + ], + [ + false, + 11 + ], + [ + false, + 281 + ] + ], + [ + [ + true, + 11 + ], + [ + true, + 19 + ], + [ + false, + 281 + ] + ], + [ + [ + false, + 19 + ], + [ + true, + 11 + ], + [ + true, + 281 + ] + ], + [ + [ + false, + 11 + ], + [ + true, + 19 + ], + [ + true, + 281 + ] + ], + [ + [ + false, + 281 + ] + ], + [ + [ + false, + 18 + ], + [ + false, + 26 + ], + [ + false, + 282 + ] + ], + [ + [ + true, + 18 + ], + [ + true, + 26 + ], + [ + false, + 282 + ] + ], + [ + [ + true, + 18 + ], + [ + false, + 26 + ], + [ + true, + 282 + ] + ], + [ + [ + false, + 18 + ], + [ + true, + 26 + ], + [ + true, + 282 + ] + ], + [ + [ + false, + 282 + ] + ], + [ + [ + false, + 25 + ], + [ + false, + 33 + ], + [ + false, + 283 + ] + ], + [ + [ + true, + 25 + ], + [ + true, + 33 + ], + [ + false, + 283 + ] + ], + [ + [ + true, + 25 + ], + [ + false, + 33 + ], + [ + true, + 283 + ] + ], + [ + [ + false, + 25 + ], + [ + true, + 33 + ], + [ + true, + 283 + ] + ], + [ + [ + false, + 283 + ] + ], + [ + [ + false, + 32 + ], + [ + false, + 40 + ], + [ + false, + 284 + ] + ], + [ + [ + true, + 32 + ], + [ + true, + 40 + ], + [ + false, + 284 + ] + ], + [ + [ + true, + 32 + ], + [ + false, + 40 + ], + [ + true, + 284 + ] + ], + [ + [ + false, + 32 + ], + [ + true, + 40 + ], + [ + true, + 284 + ] + ], + [ + [ + false, + 284 + ] + ], + [ + [ + true, + 40 + ], + [ + false, + 48 + ], + [ + false, + 285 + ] + ], + [ + [ + true, + 48 + ], + [ + false, + 40 + ], + [ + false, + 285 + ] + ], + [ + [ + true, + 285 + ], + [ + false, + 40 + ], + [ + false, + 48 + ] + ], + [ + [ + true, + 40 + ], + [ + true, + 48 + ], + [ + true, + 285 + ] + ], + [ + [ + false, + 285 + ] + ], + [ + [ + false, + 50 + ], + [ + false, + 58 + ], + [ + false, + 286 + ] + ], + [ + [ + true, + 50 + ], + [ + true, + 58 + ], + [ + false, + 286 + ] + ], + [ + [ + true, + 50 + ], + [ + false, + 58 + ], + [ + true, + 286 + ] + ], + [ + [ + false, + 50 + ], + [ + true, + 58 + ], + [ + true, + 286 + ] + ], + [ + [ + false, + 286 + ] + ], + [ + [ + false, + 57 + ], + [ + false, + 65 + ], + [ + false, + 287 + ] + ], + [ + [ + true, + 57 + ], + [ + true, + 65 + ], + [ + false, + 287 + ] + ], + [ + [ + true, + 57 + ], + [ + false, + 65 + ], + [ + true, + 287 + ] + ], + [ + [ + true, + 65 + ], + [ + false, + 57 + ], + [ + true, + 287 + ] + ], + [ + [ + false, + 287 + ] + ], + [ + [ + false, + 68 + ], + [ + false, + 76 + ], + [ + false, + 288 + ] + ], + [ + [ + true, + 68 + ], + [ + true, + 76 + ], + [ + false, + 288 + ] + ], + [ + [ + true, + 68 + ], + [ + false, + 76 + ], + [ + true, + 288 + ] + ], + [ + [ + false, + 68 + ], + [ + true, + 76 + ], + [ + true, + 288 + ] + ], + [ + [ + false, + 288 + ] + ], + [ + [ + false, + 73 + ], + [ + false, + 81 + ], + [ + false, + 289 + ] + ], + [ + [ + true, + 73 + ], + [ + true, + 81 + ], + [ + false, + 289 + ] + ], + [ + [ + true, + 73 + ], + [ + false, + 81 + ], + [ + true, + 289 + ] + ], + [ + [ + false, + 73 + ], + [ + true, + 81 + ], + [ + true, + 289 + ] + ], + [ + [ + false, + 289 + ] + ], + [ + [ + false, + 88 + ], + [ + false, + 80 + ], + [ + false, + 290 + ] + ], + [ + [ + true, + 80 + ], + [ + true, + 88 + ], + [ + false, + 290 + ] + ], + [ + [ + false, + 88 + ], + [ + true, + 80 + ], + [ + true, + 290 + ] + ], + [ + [ + false, + 80 + ], + [ + true, + 88 + ], + [ + true, + 290 + ] + ], + [ + [ + false, + 290 + ] + ], + [ + [ + false, + 88 + ], + [ + false, + 96 + ], + [ + false, + 291 + ] + ], + [ + [ + true, + 88 + ], + [ + true, + 96 + ], + [ + false, + 291 + ] + ], + [ + [ + true, + 88 + ], + [ + false, + 96 + ], + [ + true, + 291 + ] + ], + [ + [ + false, + 88 + ], + [ + true, + 96 + ], + [ + true, + 291 + ] + ], + [ + [ + false, + 291 + ] + ], + [ + [ + false, + 97 + ], + [ + false, + 105 + ], + [ + false, + 292 + ] + ], + [ + [ + true, + 97 + ], + [ + true, + 105 + ], + [ + false, + 292 + ] + ], + [ + [ + true, + 97 + ], + [ + false, + 105 + ], + [ + true, + 292 + ] + ], + [ + [ + false, + 97 + ], + [ + true, + 105 + ], + [ + true, + 292 + ] + ], + [ + [ + false, + 292 + ] + ], + [ + [ + false, + 106 + ], + [ + false, + 114 + ], + [ + false, + 293 + ] + ], + [ + [ + true, + 106 + ], + [ + true, + 114 + ], + [ + false, + 293 + ] + ], + [ + [ + true, + 106 + ], + [ + false, + 114 + ], + [ + true, + 293 + ] + ], + [ + [ + false, + 106 + ], + [ + true, + 114 + ], + [ + true, + 293 + ] + ], + [ + [ + false, + 293 + ] + ], + [ + [ + false, + 112 + ], + [ + false, + 120 + ], + [ + false, + 294 + ] + ], + [ + [ + true, + 112 + ], + [ + true, + 120 + ], + [ + false, + 294 + ] + ], + [ + [ + true, + 112 + ], + [ + false, + 120 + ], + [ + true, + 294 + ] + ], + [ + [ + false, + 112 + ], + [ + true, + 120 + ], + [ + true, + 294 + ] + ], + [ + [ + false, + 294 + ] + ], + [ + [ + false, + 122 + ], + [ + false, + 130 + ], + [ + false, + 295 + ] + ], + [ + [ + true, + 122 + ], + [ + true, + 130 + ], + [ + false, + 295 + ] + ], + [ + [ + true, + 122 + ], + [ + false, + 130 + ], + [ + true, + 295 + ] + ], + [ + [ + false, + 122 + ], + [ + true, + 130 + ], + [ + true, + 295 + ] + ], + [ + [ + false, + 295 + ] + ], + [ + [ + false, + 129 + ], + [ + false, + 137 + ], + [ + false, + 296 + ] + ], + [ + [ + true, + 129 + ], + [ + true, + 137 + ], + [ + false, + 296 + ] + ], + [ + [ + true, + 129 + ], + [ + false, + 137 + ], + [ + true, + 296 + ] + ], + [ + [ + false, + 129 + ], + [ + true, + 137 + ], + [ + true, + 296 + ] + ], + [ + [ + false, + 296 + ] + ], + [ + [ + false, + 139 + ], + [ + false, + 147 + ], + [ + false, + 297 + ] + ], + [ + [ + true, + 139 + ], + [ + true, + 147 + ], + [ + false, + 297 + ] + ], + [ + [ + true, + 139 + ], + [ + false, + 147 + ], + [ + true, + 297 + ] + ], + [ + [ + false, + 139 + ], + [ + true, + 147 + ], + [ + true, + 297 + ] + ], + [ + [ + false, + 297 + ] + ], + [ + [ + false, + 144 + ], + [ + false, + 152 + ], + [ + false, + 298 + ] + ], + [ + [ + true, + 144 + ], + [ + true, + 152 + ], + [ + false, + 298 + ] + ], + [ + [ + true, + 144 + ], + [ + false, + 152 + ], + [ + true, + 298 + ] + ], + [ + [ + false, + 144 + ], + [ + true, + 152 + ], + [ + true, + 298 + ] + ], + [ + [ + false, + 298 + ] + ], + [ + [ + false, + 161 + ], + [ + false, + 153 + ], + [ + false, + 299 + ] + ], + [ + [ + true, + 153 + ], + [ + true, + 161 + ], + [ + false, + 299 + ] + ], + [ + [ + false, + 161 + ], + [ + true, + 153 + ], + [ + true, + 299 + ] + ], + [ + [ + false, + 153 + ], + [ + true, + 161 + ], + [ + true, + 299 + ] + ], + [ + [ + false, + 299 + ] + ], + [ + [ + false, + 161 + ], + [ + false, + 169 + ], + [ + false, + 300 + ] + ], + [ + [ + true, + 161 + ], + [ + true, + 169 + ], + [ + false, + 300 + ] + ], + [ + [ + true, + 161 + ], + [ + false, + 169 + ], + [ + true, + 300 + ] + ], + [ + [ + false, + 161 + ], + [ + true, + 169 + ], + [ + true, + 300 + ] + ], + [ + [ + false, + 300 + ] + ], + [ + [ + false, + 169 + ], + [ + false, + 177 + ], + [ + false, + 301 + ] + ], + [ + [ + true, + 169 + ], + [ + true, + 177 + ], + [ + false, + 301 + ] + ], + [ + [ + true, + 169 + ], + [ + false, + 177 + ], + [ + true, + 301 + ] + ], + [ + [ + false, + 169 + ], + [ + true, + 177 + ], + [ + true, + 301 + ] + ], + [ + [ + false, + 301 + ] + ], + [ + [ + false, + 179 + ], + [ + false, + 187 + ], + [ + false, + 302 + ] + ], + [ + [ + true, + 179 + ], + [ + true, + 187 + ], + [ + false, + 302 + ] + ], + [ + [ + true, + 179 + ], + [ + false, + 187 + ], + [ + true, + 302 + ] + ], + [ + [ + false, + 179 + ], + [ + true, + 187 + ], + [ + true, + 302 + ] + ], + [ + [ + false, + 302 + ] + ], + [ + [ + false, + 185 + ], + [ + false, + 193 + ], + [ + false, + 303 + ] + ], + [ + [ + true, + 185 + ], + [ + true, + 193 + ], + [ + false, + 303 + ] + ], + [ + [ + true, + 185 + ], + [ + false, + 193 + ], + [ + true, + 303 + ] + ], + [ + [ + false, + 185 + ], + [ + true, + 193 + ], + [ + true, + 303 + ] + ], + [ + [ + false, + 303 + ] + ], + [ + [ + false, + 194 + ], + [ + false, + 202 + ], + [ + false, + 304 + ] + ], + [ + [ + true, + 194 + ], + [ + true, + 202 + ], + [ + false, + 304 + ] + ], + [ + [ + true, + 194 + ], + [ + false, + 202 + ], + [ + true, + 304 + ] + ], + [ + [ + false, + 194 + ], + [ + true, + 202 + ], + [ + true, + 304 + ] + ], + [ + [ + false, + 304 + ] + ], + [ + [ + false, + 210 + ], + [ + false, + 202 + ], + [ + false, + 305 + ] + ], + [ + [ + true, + 202 + ], + [ + true, + 210 + ], + [ + false, + 305 + ] + ], + [ + [ + false, + 210 + ], + [ + true, + 202 + ], + [ + true, + 305 + ] + ], + [ + [ + false, + 202 + ], + [ + true, + 210 + ], + [ + true, + 305 + ] + ], + [ + [ + false, + 305 + ] + ], + [ + [ + false, + 210 + ], + [ + false, + 218 + ], + [ + false, + 306 + ] + ], + [ + [ + true, + 210 + ], + [ + true, + 218 + ], + [ + false, + 306 + ] + ], + [ + [ + true, + 210 + ], + [ + false, + 218 + ], + [ + true, + 306 + ] + ], + [ + [ + false, + 210 + ], + [ + true, + 218 + ], + [ + true, + 306 + ] + ], + [ + [ + false, + 306 + ] + ], + [ + [ + false, + 227 + ], + [ + false, + 219 + ], + [ + false, + 307 + ] + ], + [ + [ + true, + 219 + ], + [ + true, + 227 + ], + [ + false, + 307 + ] + ], + [ + [ + false, + 227 + ], + [ + true, + 219 + ], + [ + true, + 307 + ] + ], + [ + [ + true, + 227 + ], + [ + false, + 219 + ], + [ + true, + 307 + ] + ], + [ + [ + false, + 307 + ] + ], + [ + [ + false, + 227 + ], + [ + false, + 235 + ], + [ + false, + 308 + ] + ], + [ + [ + true, + 227 + ], + [ + true, + 235 + ], + [ + false, + 308 + ] + ], + [ + [ + true, + 227 + ], + [ + false, + 235 + ], + [ + true, + 308 + ] + ], + [ + [ + false, + 227 + ], + [ + true, + 235 + ], + [ + true, + 308 + ] + ], + [ + [ + false, + 308 + ] + ], + [ + [ + false, + 234 + ], + [ + false, + 242 + ], + [ + false, + 309 + ] + ], + [ + [ + true, + 234 + ], + [ + true, + 242 + ], + [ + false, + 309 + ] + ], + [ + [ + true, + 234 + ], + [ + false, + 242 + ], + [ + true, + 309 + ] + ], + [ + [ + true, + 242 + ], + [ + false, + 234 + ], + [ + true, + 309 + ] + ], + [ + [ + false, + 309 + ] + ], + [ + [ + false, + 241 + ], + [ + false, + 249 + ], + [ + false, + 310 + ] + ], + [ + [ + true, + 241 + ], + [ + true, + 249 + ], + [ + false, + 310 + ] + ], + [ + [ + false, + 249 + ], + [ + true, + 241 + ], + [ + true, + 310 + ] + ], + [ + [ + false, + 241 + ], + [ + true, + 249 + ], + [ + true, + 310 + ] + ], + [ + [ + false, + 310 + ] + ], + [ + [ + false, + 249 + ], + [ + false, + 257 + ], + [ + false, + 311 + ] + ], + [ + [ + true, + 249 + ], + [ + true, + 257 + ], + [ + false, + 311 + ] + ], + [ + [ + true, + 249 + ], + [ + false, + 257 + ], + [ + true, + 311 + ] + ], + [ + [ + false, + 249 + ], + [ + true, + 257 + ], + [ + true, + 311 + ] + ], + [ + [ + false, + 311 + ] + ], + [ + [ + false, + 257 + ], + [ + false, + 265 + ], + [ + false, + 312 + ] + ], + [ + [ + true, + 257 + ], + [ + true, + 265 + ], + [ + false, + 312 + ] + ], + [ + [ + true, + 257 + ], + [ + false, + 265 + ], + [ + true, + 312 + ] + ], + [ + [ + false, + 257 + ], + [ + true, + 265 + ], + [ + true, + 312 + ] + ], + [ + [ + false, + 312 + ] + ], + [ + [ + false, + 264 + ], + [ + false, + 272 + ], + [ + false, + 313 + ] + ], + [ + [ + true, + 264 + ], + [ + true, + 272 + ], + [ + false, + 313 + ] + ], + [ + [ + true, + 264 + ], + [ + false, + 272 + ], + [ + true, + 313 + ] + ], + [ + [ + false, + 264 + ], + [ + true, + 272 + ], + [ + true, + 313 + ] + ], + [ + [ + false, + 313 + ] + ], + [ + [ + false, + 0 + ], + [ + true, + 272 + ], + [ + false, + 314 + ] + ], + [ + [ + true, + 0 + ], + [ + false, + 272 + ], + [ + false, + 314 + ] + ], + [ + [ + false, + 0 + ], + [ + false, + 272 + ], + [ + true, + 314 + ] + ], + [ + [ + true, + 0 + ], + [ + true, + 272 + ], + [ + true, + 314 + ] + ], + [ + [ + false, + 314 + ] + ], + [ + [ + false, + 2 + ] + ], + [ + [ + false, + 7 + ] + ], + [ + [ + true, + 1 + ] + ], + [ + [ + true, + 3 + ] + ], + [ + [ + true, + 4 + ] + ], + [ + [ + true, + 5 + ] + ], + [ + [ + true, + 6 + ] + ], + [ + [ + true, + 1 + ], + [ + false, + 9 + ], + [ + false, + 315 + ] + ], + [ + [ + true, + 9 + ], + [ + false, + 1 + ], + [ + false, + 315 + ] + ], + [ + [ + true, + 315 + ], + [ + false, + 1 + ], + [ + false, + 9 + ] + ], + [ + [ + true, + 1 + ], + [ + true, + 9 + ], + [ + true, + 315 + ] + ], + [ + [ + false, + 315 + ] + ], + [ + [ + true, + 2 + ], + [ + false, + 10 + ], + [ + false, + 316 + ] + ], + [ + [ + false, + 2 + ], + [ + true, + 10 + ], + [ + false, + 316 + ] + ], + [ + [ + true, + 316 + ], + [ + false, + 2 + ], + [ + false, + 10 + ] + ], + [ + [ + true, + 2 + ], + [ + true, + 10 + ], + [ + true, + 316 + ] + ], + [ + [ + false, + 316 + ] + ], + [ + [ + true, + 3 + ], + [ + false, + 11 + ], + [ + false, + 317 + ] + ], + [ + [ + true, + 11 + ], + [ + false, + 3 + ], + [ + false, + 317 + ] + ], + [ + [ + true, + 317 + ], + [ + false, + 3 + ], + [ + false, + 11 + ] + ], + [ + [ + true, + 3 + ], + [ + true, + 11 + ], + [ + true, + 317 + ] + ], + [ + [ + false, + 317 + ] + ], + [ + [ + true, + 4 + ], + [ + false, + 12 + ], + [ + false, + 318 + ] + ], + [ + [ + true, + 12 + ], + [ + false, + 4 + ], + [ + false, + 318 + ] + ], + [ + [ + true, + 318 + ], + [ + false, + 4 + ], + [ + false, + 12 + ] + ], + [ + [ + true, + 4 + ], + [ + true, + 12 + ], + [ + true, + 318 + ] + ], + [ + [ + false, + 318 + ] + ], + [ + [ + false, + 5 + ], + [ + false, + 13 + ], + [ + false, + 319 + ] + ], + [ + [ + true, + 5 + ], + [ + true, + 13 + ], + [ + false, + 319 + ] + ], + [ + [ + true, + 5 + ], + [ + false, + 13 + ], + [ + true, + 319 + ] + ], + [ + [ + false, + 5 + ], + [ + true, + 13 + ], + [ + true, + 319 + ] + ], + [ + [ + false, + 319 + ] + ], + [ + [ + false, + 6 + ], + [ + false, + 14 + ], + [ + false, + 320 + ] + ], + [ + [ + true, + 6 + ], + [ + true, + 14 + ], + [ + false, + 320 + ] + ], + [ + [ + true, + 6 + ], + [ + false, + 14 + ], + [ + true, + 320 + ] + ], + [ + [ + false, + 6 + ], + [ + true, + 14 + ], + [ + true, + 320 + ] + ], + [ + [ + false, + 320 + ] + ], + [ + [ + false, + 7 + ], + [ + false, + 15 + ], + [ + false, + 321 + ] + ], + [ + [ + true, + 7 + ], + [ + true, + 15 + ], + [ + false, + 321 + ] + ], + [ + [ + true, + 7 + ], + [ + false, + 15 + ], + [ + true, + 321 + ] + ], + [ + [ + false, + 7 + ], + [ + true, + 15 + ], + [ + true, + 321 + ] + ], + [ + [ + false, + 321 + ] + ], + [ + [ + false, + 13 + ], + [ + false, + 21 + ], + [ + false, + 322 + ] + ], + [ + [ + true, + 13 + ], + [ + true, + 21 + ], + [ + false, + 322 + ] + ], + [ + [ + true, + 13 + ], + [ + false, + 21 + ], + [ + true, + 322 + ] + ], + [ + [ + true, + 21 + ], + [ + false, + 13 + ], + [ + true, + 322 + ] + ], + [ + [ + false, + 322 + ] + ], + [ + [ + false, + 14 + ], + [ + false, + 22 + ], + [ + false, + 323 + ] + ], + [ + [ + true, + 14 + ], + [ + true, + 22 + ], + [ + false, + 323 + ] + ], + [ + [ + true, + 14 + ], + [ + false, + 22 + ], + [ + true, + 323 + ] + ], + [ + [ + true, + 22 + ], + [ + false, + 14 + ], + [ + true, + 323 + ] + ], + [ + [ + false, + 323 + ] + ], + [ + [ + false, + 15 + ], + [ + false, + 23 + ], + [ + false, + 324 + ] + ], + [ + [ + true, + 15 + ], + [ + true, + 23 + ], + [ + false, + 324 + ] + ], + [ + [ + true, + 15 + ], + [ + false, + 23 + ], + [ + true, + 324 + ] + ], + [ + [ + true, + 23 + ], + [ + false, + 15 + ], + [ + true, + 324 + ] + ], + [ + [ + false, + 324 + ] + ], + [ + [ + true, + 8 + ], + [ + false, + 16 + ], + [ + false, + 325 + ] + ], + [ + [ + true, + 16 + ], + [ + false, + 8 + ], + [ + false, + 325 + ] + ], + [ + [ + true, + 325 + ], + [ + false, + 8 + ], + [ + false, + 16 + ] + ], + [ + [ + true, + 8 + ], + [ + true, + 16 + ], + [ + true, + 325 + ] + ], + [ + [ + false, + 325 + ] + ], + [ + [ + true, + 9 + ], + [ + false, + 17 + ], + [ + false, + 326 + ] + ], + [ + [ + true, + 17 + ], + [ + false, + 9 + ], + [ + false, + 326 + ] + ], + [ + [ + true, + 326 + ], + [ + false, + 9 + ], + [ + false, + 17 + ] + ], + [ + [ + true, + 9 + ], + [ + true, + 17 + ], + [ + true, + 326 + ] + ], + [ + [ + false, + 326 + ] + ], + [ + [ + false, + 18 + ], + [ + true, + 10 + ], + [ + false, + 327 + ] + ], + [ + [ + true, + 18 + ], + [ + false, + 10 + ], + [ + false, + 327 + ] + ], + [ + [ + true, + 327 + ], + [ + false, + 10 + ], + [ + false, + 18 + ] + ], + [ + [ + true, + 10 + ], + [ + true, + 18 + ], + [ + true, + 327 + ] + ], + [ + [ + false, + 327 + ] + ], + [ + [ + true, + 12 + ], + [ + false, + 20 + ], + [ + false, + 328 + ] + ], + [ + [ + true, + 20 + ], + [ + false, + 12 + ], + [ + false, + 328 + ] + ], + [ + [ + true, + 328 + ], + [ + false, + 12 + ], + [ + false, + 20 + ] + ], + [ + [ + true, + 12 + ], + [ + true, + 20 + ], + [ + true, + 328 + ] + ], + [ + [ + false, + 328 + ] + ], + [ + [ + false, + 19 + ], + [ + false, + 27 + ], + [ + false, + 329 + ] + ], + [ + [ + true, + 19 + ], + [ + true, + 27 + ], + [ + false, + 329 + ] + ], + [ + [ + true, + 19 + ], + [ + false, + 27 + ], + [ + true, + 329 + ] + ], + [ + [ + false, + 19 + ], + [ + true, + 27 + ], + [ + true, + 329 + ] + ], + [ + [ + false, + 329 + ] + ], + [ + [ + false, + 16 + ], + [ + false, + 24 + ], + [ + false, + 330 + ] + ], + [ + [ + true, + 16 + ], + [ + true, + 24 + ], + [ + false, + 330 + ] + ], + [ + [ + true, + 16 + ], + [ + false, + 24 + ], + [ + true, + 330 + ] + ], + [ + [ + false, + 16 + ], + [ + true, + 24 + ], + [ + true, + 330 + ] + ], + [ + [ + false, + 330 + ] + ], + [ + [ + false, + 20 + ], + [ + false, + 28 + ], + [ + false, + 331 + ] + ], + [ + [ + true, + 20 + ], + [ + true, + 28 + ], + [ + false, + 331 + ] + ], + [ + [ + true, + 20 + ], + [ + false, + 28 + ], + [ + true, + 331 + ] + ], + [ + [ + true, + 28 + ], + [ + false, + 20 + ], + [ + true, + 331 + ] + ], + [ + [ + false, + 331 + ] + ], + [ + [ + false, + 21 + ], + [ + false, + 29 + ], + [ + false, + 332 + ] + ], + [ + [ + true, + 21 + ], + [ + true, + 29 + ], + [ + false, + 332 + ] + ], + [ + [ + true, + 21 + ], + [ + false, + 29 + ], + [ + true, + 332 + ] + ], + [ + [ + true, + 29 + ], + [ + false, + 21 + ], + [ + true, + 332 + ] + ], + [ + [ + false, + 332 + ] + ], + [ + [ + false, + 23 + ], + [ + false, + 31 + ], + [ + false, + 333 + ] + ], + [ + [ + true, + 23 + ], + [ + true, + 31 + ], + [ + false, + 333 + ] + ], + [ + [ + true, + 23 + ], + [ + false, + 31 + ], + [ + true, + 333 + ] + ], + [ + [ + true, + 31 + ], + [ + false, + 23 + ], + [ + true, + 333 + ] + ], + [ + [ + false, + 333 + ] + ], + [ + [ + false, + 25 + ], + [ + true, + 17 + ], + [ + false, + 334 + ] + ], + [ + [ + true, + 25 + ], + [ + false, + 17 + ], + [ + false, + 334 + ] + ], + [ + [ + true, + 334 + ], + [ + false, + 17 + ], + [ + false, + 25 + ] + ], + [ + [ + true, + 17 + ], + [ + true, + 25 + ], + [ + true, + 334 + ] + ], + [ + [ + false, + 334 + ] + ], + [ + [ + true, + 22 + ], + [ + false, + 30 + ], + [ + false, + 335 + ] + ], + [ + [ + true, + 30 + ], + [ + false, + 22 + ], + [ + false, + 335 + ] + ], + [ + [ + true, + 335 + ], + [ + false, + 22 + ], + [ + false, + 30 + ] + ], + [ + [ + true, + 22 + ], + [ + true, + 30 + ], + [ + true, + 335 + ] + ], + [ + [ + false, + 335 + ] + ], + [ + [ + false, + 24 + ], + [ + false, + 32 + ], + [ + false, + 336 + ] + ], + [ + [ + true, + 24 + ], + [ + true, + 32 + ], + [ + false, + 336 + ] + ], + [ + [ + true, + 24 + ], + [ + false, + 32 + ], + [ + true, + 336 + ] + ], + [ + [ + false, + 24 + ], + [ + true, + 32 + ], + [ + true, + 336 + ] + ], + [ + [ + false, + 336 + ] + ], + [ + [ + false, + 26 + ], + [ + false, + 34 + ], + [ + false, + 337 + ] + ], + [ + [ + true, + 26 + ], + [ + true, + 34 + ], + [ + false, + 337 + ] + ], + [ + [ + true, + 26 + ], + [ + false, + 34 + ], + [ + true, + 337 + ] + ], + [ + [ + true, + 34 + ], + [ + false, + 26 + ], + [ + true, + 337 + ] + ], + [ + [ + false, + 337 + ] + ], + [ + [ + false, + 27 + ], + [ + false, + 35 + ], + [ + false, + 338 + ] + ], + [ + [ + true, + 27 + ], + [ + true, + 35 + ], + [ + false, + 338 + ] + ], + [ + [ + true, + 27 + ], + [ + false, + 35 + ], + [ + true, + 338 + ] + ], + [ + [ + true, + 35 + ], + [ + false, + 27 + ], + [ + true, + 338 + ] + ], + [ + [ + false, + 338 + ] + ], + [ + [ + false, + 28 + ], + [ + false, + 36 + ], + [ + false, + 339 + ] + ], + [ + [ + true, + 28 + ], + [ + true, + 36 + ], + [ + false, + 339 + ] + ], + [ + [ + true, + 28 + ], + [ + false, + 36 + ], + [ + true, + 339 + ] + ], + [ + [ + true, + 36 + ], + [ + false, + 28 + ], + [ + true, + 339 + ] + ], + [ + [ + false, + 339 + ] + ], + [ + [ + false, + 29 + ], + [ + false, + 37 + ], + [ + false, + 340 + ] + ], + [ + [ + true, + 29 + ], + [ + true, + 37 + ], + [ + false, + 340 + ] + ], + [ + [ + true, + 29 + ], + [ + false, + 37 + ], + [ + true, + 340 + ] + ], + [ + [ + true, + 37 + ], + [ + false, + 29 + ], + [ + true, + 340 + ] + ], + [ + [ + false, + 340 + ] + ], + [ + [ + false, + 31 + ], + [ + false, + 39 + ], + [ + false, + 341 + ] + ], + [ + [ + true, + 31 + ], + [ + true, + 39 + ], + [ + false, + 341 + ] + ], + [ + [ + true, + 31 + ], + [ + false, + 39 + ], + [ + true, + 341 + ] + ], + [ + [ + true, + 39 + ], + [ + false, + 31 + ], + [ + true, + 341 + ] + ], + [ + [ + false, + 341 + ] + ], + [ + [ + true, + 30 + ], + [ + false, + 38 + ], + [ + false, + 342 + ] + ], + [ + [ + true, + 38 + ], + [ + false, + 30 + ], + [ + false, + 342 + ] + ], + [ + [ + true, + 342 + ], + [ + false, + 30 + ], + [ + false, + 38 + ] + ], + [ + [ + true, + 30 + ], + [ + true, + 38 + ], + [ + true, + 342 + ] + ], + [ + [ + false, + 342 + ] + ], + [ + [ + false, + 33 + ], + [ + false, + 41 + ], + [ + false, + 343 + ] + ], + [ + [ + true, + 33 + ], + [ + true, + 41 + ], + [ + false, + 343 + ] + ], + [ + [ + true, + 33 + ], + [ + false, + 41 + ], + [ + true, + 343 + ] + ], + [ + [ + true, + 41 + ], + [ + false, + 33 + ], + [ + true, + 343 + ] + ], + [ + [ + false, + 343 + ] + ], + [ + [ + false, + 35 + ], + [ + false, + 43 + ], + [ + false, + 344 + ] + ], + [ + [ + true, + 35 + ], + [ + true, + 43 + ], + [ + false, + 344 + ] + ], + [ + [ + true, + 35 + ], + [ + false, + 43 + ], + [ + true, + 344 + ] + ], + [ + [ + true, + 43 + ], + [ + false, + 35 + ], + [ + true, + 344 + ] + ], + [ + [ + false, + 344 + ] + ], + [ + [ + false, + 36 + ], + [ + false, + 44 + ], + [ + false, + 345 + ] + ], + [ + [ + true, + 36 + ], + [ + true, + 44 + ], + [ + false, + 345 + ] + ], + [ + [ + true, + 36 + ], + [ + false, + 44 + ], + [ + true, + 345 + ] + ], + [ + [ + true, + 44 + ], + [ + false, + 36 + ], + [ + true, + 345 + ] + ], + [ + [ + false, + 345 + ] + ], + [ + [ + false, + 37 + ], + [ + false, + 45 + ], + [ + false, + 346 + ] + ], + [ + [ + true, + 37 + ], + [ + true, + 45 + ], + [ + false, + 346 + ] + ], + [ + [ + true, + 37 + ], + [ + false, + 45 + ], + [ + true, + 346 + ] + ], + [ + [ + true, + 45 + ], + [ + false, + 37 + ], + [ + true, + 346 + ] + ], + [ + [ + false, + 346 + ] + ], + [ + [ + false, + 38 + ], + [ + false, + 46 + ], + [ + false, + 347 + ] + ], + [ + [ + true, + 38 + ], + [ + true, + 46 + ], + [ + false, + 347 + ] + ], + [ + [ + true, + 38 + ], + [ + false, + 46 + ], + [ + true, + 347 + ] + ], + [ + [ + true, + 46 + ], + [ + false, + 38 + ], + [ + true, + 347 + ] + ], + [ + [ + false, + 347 + ] + ], + [ + [ + false, + 39 + ], + [ + false, + 47 + ], + [ + false, + 348 + ] + ], + [ + [ + true, + 39 + ], + [ + true, + 47 + ], + [ + false, + 348 + ] + ], + [ + [ + true, + 39 + ], + [ + false, + 47 + ], + [ + true, + 348 + ] + ], + [ + [ + true, + 47 + ], + [ + false, + 39 + ], + [ + true, + 348 + ] + ], + [ + [ + false, + 348 + ] + ], + [ + [ + true, + 34 + ], + [ + false, + 42 + ], + [ + false, + 349 + ] + ], + [ + [ + true, + 42 + ], + [ + false, + 34 + ], + [ + false, + 349 + ] + ], + [ + [ + true, + 349 + ], + [ + false, + 34 + ], + [ + false, + 42 + ] + ], + [ + [ + true, + 34 + ], + [ + true, + 42 + ], + [ + true, + 349 + ] + ], + [ + [ + false, + 349 + ] + ], + [ + [ + true, + 41 + ], + [ + false, + 49 + ], + [ + false, + 350 + ] + ], + [ + [ + true, + 49 + ], + [ + false, + 41 + ], + [ + false, + 350 + ] + ], + [ + [ + true, + 350 + ], + [ + false, + 41 + ], + [ + false, + 49 + ] + ], + [ + [ + true, + 41 + ], + [ + true, + 49 + ], + [ + true, + 350 + ] + ], + [ + [ + false, + 350 + ] + ], + [ + [ + true, + 42 + ], + [ + false, + 50 + ], + [ + false, + 351 + ] + ], + [ + [ + true, + 50 + ], + [ + false, + 42 + ], + [ + false, + 351 + ] + ], + [ + [ + true, + 351 + ], + [ + false, + 42 + ], + [ + false, + 50 + ] + ], + [ + [ + true, + 42 + ], + [ + true, + 50 + ], + [ + true, + 351 + ] + ], + [ + [ + false, + 351 + ] + ], + [ + [ + false, + 43 + ], + [ + false, + 51 + ], + [ + false, + 352 + ] + ], + [ + [ + true, + 43 + ], + [ + true, + 51 + ], + [ + false, + 352 + ] + ], + [ + [ + true, + 43 + ], + [ + false, + 51 + ], + [ + true, + 352 + ] + ], + [ + [ + true, + 51 + ], + [ + false, + 43 + ], + [ + true, + 352 + ] + ], + [ + [ + false, + 352 + ] + ], + [ + [ + false, + 44 + ], + [ + false, + 52 + ], + [ + false, + 353 + ] + ], + [ + [ + true, + 44 + ], + [ + true, + 52 + ], + [ + false, + 353 + ] + ], + [ + [ + true, + 44 + ], + [ + false, + 52 + ], + [ + true, + 353 + ] + ], + [ + [ + true, + 52 + ], + [ + false, + 44 + ], + [ + true, + 353 + ] + ], + [ + [ + false, + 353 + ] + ], + [ + [ + false, + 45 + ], + [ + false, + 53 + ], + [ + false, + 354 + ] + ], + [ + [ + true, + 45 + ], + [ + true, + 53 + ], + [ + false, + 354 + ] + ], + [ + [ + true, + 45 + ], + [ + false, + 53 + ], + [ + true, + 354 + ] + ], + [ + [ + true, + 53 + ], + [ + false, + 45 + ], + [ + true, + 354 + ] + ], + [ + [ + false, + 354 + ] + ], + [ + [ + false, + 46 + ], + [ + false, + 54 + ], + [ + false, + 355 + ] + ], + [ + [ + true, + 46 + ], + [ + true, + 54 + ], + [ + false, + 355 + ] + ], + [ + [ + true, + 46 + ], + [ + false, + 54 + ], + [ + true, + 355 + ] + ], + [ + [ + true, + 54 + ], + [ + false, + 46 + ], + [ + true, + 355 + ] + ], + [ + [ + false, + 355 + ] + ], + [ + [ + false, + 47 + ], + [ + false, + 55 + ], + [ + false, + 356 + ] + ], + [ + [ + true, + 47 + ], + [ + true, + 55 + ], + [ + false, + 356 + ] + ], + [ + [ + true, + 47 + ], + [ + false, + 55 + ], + [ + true, + 356 + ] + ], + [ + [ + true, + 55 + ], + [ + false, + 47 + ], + [ + true, + 356 + ] + ], + [ + [ + false, + 356 + ] + ], + [ + [ + false, + 49 + ], + [ + false, + 57 + ], + [ + false, + 357 + ] + ], + [ + [ + true, + 49 + ], + [ + true, + 57 + ], + [ + false, + 357 + ] + ], + [ + [ + true, + 49 + ], + [ + false, + 57 + ], + [ + true, + 357 + ] + ], + [ + [ + false, + 49 + ], + [ + true, + 57 + ], + [ + true, + 357 + ] + ], + [ + [ + false, + 357 + ] + ], + [ + [ + false, + 48 + ], + [ + false, + 56 + ], + [ + false, + 358 + ] + ], + [ + [ + true, + 48 + ], + [ + true, + 56 + ], + [ + false, + 358 + ] + ], + [ + [ + true, + 48 + ], + [ + false, + 56 + ], + [ + true, + 358 + ] + ], + [ + [ + false, + 48 + ], + [ + true, + 56 + ], + [ + true, + 358 + ] + ], + [ + [ + false, + 358 + ] + ], + [ + [ + false, + 52 + ], + [ + false, + 60 + ], + [ + false, + 359 + ] + ], + [ + [ + true, + 52 + ], + [ + true, + 60 + ], + [ + false, + 359 + ] + ], + [ + [ + true, + 52 + ], + [ + false, + 60 + ], + [ + true, + 359 + ] + ], + [ + [ + true, + 60 + ], + [ + false, + 52 + ], + [ + true, + 359 + ] + ], + [ + [ + false, + 359 + ] + ], + [ + [ + false, + 53 + ], + [ + false, + 61 + ], + [ + false, + 360 + ] + ], + [ + [ + true, + 53 + ], + [ + true, + 61 + ], + [ + false, + 360 + ] + ], + [ + [ + true, + 53 + ], + [ + false, + 61 + ], + [ + true, + 360 + ] + ], + [ + [ + true, + 61 + ], + [ + false, + 53 + ], + [ + true, + 360 + ] + ], + [ + [ + false, + 360 + ] + ], + [ + [ + false, + 54 + ], + [ + false, + 62 + ], + [ + false, + 361 + ] + ], + [ + [ + true, + 54 + ], + [ + true, + 62 + ], + [ + false, + 361 + ] + ], + [ + [ + true, + 54 + ], + [ + false, + 62 + ], + [ + true, + 361 + ] + ], + [ + [ + true, + 62 + ], + [ + false, + 54 + ], + [ + true, + 361 + ] + ], + [ + [ + false, + 361 + ] + ], + [ + [ + false, + 55 + ], + [ + false, + 63 + ], + [ + false, + 362 + ] + ], + [ + [ + true, + 55 + ], + [ + true, + 63 + ], + [ + false, + 362 + ] + ], + [ + [ + true, + 55 + ], + [ + false, + 63 + ], + [ + true, + 362 + ] + ], + [ + [ + true, + 63 + ], + [ + false, + 55 + ], + [ + true, + 362 + ] + ], + [ + [ + false, + 362 + ] + ], + [ + [ + true, + 51 + ], + [ + false, + 59 + ], + [ + false, + 363 + ] + ], + [ + [ + true, + 59 + ], + [ + false, + 51 + ], + [ + false, + 363 + ] + ], + [ + [ + true, + 363 + ], + [ + false, + 51 + ], + [ + false, + 59 + ] + ], + [ + [ + true, + 51 + ], + [ + true, + 59 + ], + [ + true, + 363 + ] + ], + [ + [ + false, + 363 + ] + ], + [ + [ + false, + 62 + ], + [ + false, + 70 + ], + [ + false, + 364 + ] + ], + [ + [ + true, + 62 + ], + [ + true, + 70 + ], + [ + false, + 364 + ] + ], + [ + [ + true, + 62 + ], + [ + false, + 70 + ], + [ + true, + 364 + ] + ], + [ + [ + true, + 70 + ], + [ + false, + 62 + ], + [ + true, + 364 + ] + ], + [ + [ + false, + 364 + ] + ], + [ + [ + false, + 63 + ], + [ + false, + 71 + ], + [ + false, + 365 + ] + ], + [ + [ + true, + 63 + ], + [ + true, + 71 + ], + [ + false, + 365 + ] + ], + [ + [ + true, + 63 + ], + [ + false, + 71 + ], + [ + true, + 365 + ] + ], + [ + [ + true, + 71 + ], + [ + false, + 63 + ], + [ + true, + 365 + ] + ], + [ + [ + false, + 365 + ] + ], + [ + [ + true, + 56 + ], + [ + false, + 64 + ], + [ + false, + 366 + ] + ], + [ + [ + true, + 64 + ], + [ + false, + 56 + ], + [ + false, + 366 + ] + ], + [ + [ + true, + 366 + ], + [ + false, + 56 + ], + [ + false, + 64 + ] + ], + [ + [ + true, + 56 + ], + [ + true, + 64 + ], + [ + true, + 366 + ] + ], + [ + [ + false, + 366 + ] + ], + [ + [ + true, + 58 + ], + [ + false, + 66 + ], + [ + false, + 367 + ] + ], + [ + [ + true, + 66 + ], + [ + false, + 58 + ], + [ + false, + 367 + ] + ], + [ + [ + true, + 367 + ], + [ + false, + 58 + ], + [ + false, + 66 + ] + ], + [ + [ + true, + 58 + ], + [ + true, + 66 + ], + [ + true, + 367 + ] + ], + [ + [ + false, + 367 + ] + ], + [ + [ + true, + 59 + ], + [ + false, + 67 + ], + [ + false, + 368 + ] + ], + [ + [ + true, + 67 + ], + [ + false, + 59 + ], + [ + false, + 368 + ] + ], + [ + [ + true, + 368 + ], + [ + false, + 59 + ], + [ + false, + 67 + ] + ], + [ + [ + true, + 59 + ], + [ + true, + 67 + ], + [ + true, + 368 + ] + ], + [ + [ + false, + 368 + ] + ], + [ + [ + true, + 60 + ], + [ + false, + 68 + ], + [ + false, + 369 + ] + ], + [ + [ + true, + 68 + ], + [ + false, + 60 + ], + [ + false, + 369 + ] + ], + [ + [ + true, + 369 + ], + [ + false, + 60 + ], + [ + false, + 68 + ] + ], + [ + [ + true, + 60 + ], + [ + true, + 68 + ], + [ + true, + 369 + ] + ], + [ + [ + false, + 369 + ] + ], + [ + [ + true, + 61 + ], + [ + false, + 69 + ], + [ + false, + 370 + ] + ], + [ + [ + true, + 69 + ], + [ + false, + 61 + ], + [ + false, + 370 + ] + ], + [ + [ + true, + 370 + ], + [ + false, + 61 + ], + [ + false, + 69 + ] + ], + [ + [ + true, + 61 + ], + [ + true, + 69 + ], + [ + true, + 370 + ] + ], + [ + [ + false, + 370 + ] + ], + [ + [ + false, + 66 + ], + [ + false, + 74 + ], + [ + false, + 371 + ] + ], + [ + [ + true, + 66 + ], + [ + true, + 74 + ], + [ + false, + 371 + ] + ], + [ + [ + true, + 66 + ], + [ + false, + 74 + ], + [ + true, + 371 + ] + ], + [ + [ + false, + 66 + ], + [ + true, + 74 + ], + [ + true, + 371 + ] + ], + [ + [ + false, + 371 + ] + ], + [ + [ + false, + 64 + ], + [ + false, + 72 + ], + [ + false, + 372 + ] + ], + [ + [ + true, + 64 + ], + [ + true, + 72 + ], + [ + false, + 372 + ] + ], + [ + [ + true, + 64 + ], + [ + false, + 72 + ], + [ + true, + 372 + ] + ], + [ + [ + false, + 64 + ], + [ + true, + 72 + ], + [ + true, + 372 + ] + ], + [ + [ + false, + 372 + ] + ], + [ + [ + false, + 69 + ], + [ + false, + 77 + ], + [ + false, + 373 + ] + ], + [ + [ + true, + 69 + ], + [ + true, + 77 + ], + [ + false, + 373 + ] + ], + [ + [ + true, + 69 + ], + [ + false, + 77 + ], + [ + true, + 373 + ] + ], + [ + [ + true, + 77 + ], + [ + false, + 69 + ], + [ + true, + 373 + ] + ], + [ + [ + false, + 373 + ] + ], + [ + [ + false, + 70 + ], + [ + false, + 78 + ], + [ + false, + 374 + ] + ], + [ + [ + true, + 70 + ], + [ + true, + 78 + ], + [ + false, + 374 + ] + ], + [ + [ + true, + 70 + ], + [ + false, + 78 + ], + [ + true, + 374 + ] + ], + [ + [ + true, + 78 + ], + [ + false, + 70 + ], + [ + true, + 374 + ] + ], + [ + [ + false, + 374 + ] + ], + [ + [ + false, + 71 + ], + [ + false, + 79 + ], + [ + false, + 375 + ] + ], + [ + [ + true, + 71 + ], + [ + true, + 79 + ], + [ + false, + 375 + ] + ], + [ + [ + true, + 71 + ], + [ + false, + 79 + ], + [ + true, + 375 + ] + ], + [ + [ + true, + 79 + ], + [ + false, + 71 + ], + [ + true, + 375 + ] + ], + [ + [ + false, + 375 + ] + ], + [ + [ + true, + 65 + ], + [ + false, + 73 + ], + [ + false, + 376 + ] + ], + [ + [ + true, + 73 + ], + [ + false, + 65 + ], + [ + false, + 376 + ] + ], + [ + [ + true, + 376 + ], + [ + false, + 65 + ], + [ + false, + 73 + ] + ], + [ + [ + true, + 65 + ], + [ + true, + 73 + ], + [ + true, + 376 + ] + ], + [ + [ + false, + 376 + ] + ], + [ + [ + true, + 67 + ], + [ + false, + 75 + ], + [ + false, + 377 + ] + ], + [ + [ + true, + 75 + ], + [ + false, + 67 + ], + [ + false, + 377 + ] + ], + [ + [ + true, + 377 + ], + [ + false, + 67 + ], + [ + false, + 75 + ] + ], + [ + [ + true, + 67 + ], + [ + true, + 75 + ], + [ + true, + 377 + ] + ], + [ + [ + false, + 377 + ] + ], + [ + [ + false, + 76 + ], + [ + false, + 84 + ], + [ + false, + 378 + ] + ], + [ + [ + true, + 76 + ], + [ + true, + 84 + ], + [ + false, + 378 + ] + ], + [ + [ + true, + 76 + ], + [ + false, + 84 + ], + [ + true, + 378 + ] + ], + [ + [ + true, + 84 + ], + [ + false, + 76 + ], + [ + true, + 378 + ] + ], + [ + [ + false, + 378 + ] + ], + [ + [ + false, + 77 + ], + [ + false, + 85 + ], + [ + false, + 379 + ] + ], + [ + [ + true, + 77 + ], + [ + true, + 85 + ], + [ + false, + 379 + ] + ], + [ + [ + true, + 77 + ], + [ + false, + 85 + ], + [ + true, + 379 + ] + ], + [ + [ + true, + 85 + ], + [ + false, + 77 + ], + [ + true, + 379 + ] + ], + [ + [ + false, + 379 + ] + ], + [ + [ + false, + 78 + ], + [ + false, + 86 + ], + [ + false, + 380 + ] + ], + [ + [ + true, + 78 + ], + [ + true, + 86 + ], + [ + false, + 380 + ] + ], + [ + [ + true, + 78 + ], + [ + false, + 86 + ], + [ + true, + 380 + ] + ], + [ + [ + true, + 86 + ], + [ + false, + 78 + ], + [ + true, + 380 + ] + ], + [ + [ + false, + 380 + ] + ], + [ + [ + false, + 79 + ], + [ + false, + 87 + ], + [ + false, + 381 + ] + ], + [ + [ + true, + 79 + ], + [ + true, + 87 + ], + [ + false, + 381 + ] + ], + [ + [ + true, + 79 + ], + [ + false, + 87 + ], + [ + true, + 381 + ] + ], + [ + [ + true, + 87 + ], + [ + false, + 79 + ], + [ + true, + 381 + ] + ], + [ + [ + false, + 381 + ] + ], + [ + [ + true, + 72 + ], + [ + false, + 80 + ], + [ + false, + 382 + ] + ], + [ + [ + true, + 80 + ], + [ + false, + 72 + ], + [ + false, + 382 + ] + ], + [ + [ + true, + 382 + ], + [ + false, + 72 + ], + [ + false, + 80 + ] + ], + [ + [ + true, + 72 + ], + [ + true, + 80 + ], + [ + true, + 382 + ] + ], + [ + [ + false, + 382 + ] + ], + [ + [ + true, + 74 + ], + [ + false, + 82 + ], + [ + false, + 383 + ] + ], + [ + [ + true, + 82 + ], + [ + false, + 74 + ], + [ + false, + 383 + ] + ], + [ + [ + true, + 383 + ], + [ + false, + 74 + ], + [ + false, + 82 + ] + ], + [ + [ + true, + 74 + ], + [ + true, + 82 + ], + [ + true, + 383 + ] + ], + [ + [ + false, + 383 + ] + ], + [ + [ + true, + 75 + ], + [ + false, + 83 + ], + [ + false, + 384 + ] + ], + [ + [ + true, + 83 + ], + [ + false, + 75 + ], + [ + false, + 384 + ] + ], + [ + [ + true, + 384 + ], + [ + false, + 75 + ], + [ + false, + 83 + ] + ], + [ + [ + true, + 75 + ], + [ + true, + 83 + ], + [ + true, + 384 + ] + ], + [ + [ + false, + 384 + ] + ], + [ + [ + false, + 83 + ], + [ + false, + 91 + ], + [ + false, + 385 + ] + ], + [ + [ + true, + 83 + ], + [ + true, + 91 + ], + [ + false, + 385 + ] + ], + [ + [ + true, + 83 + ], + [ + false, + 91 + ], + [ + true, + 385 + ] + ], + [ + [ + true, + 91 + ], + [ + false, + 83 + ], + [ + true, + 385 + ] + ], + [ + [ + false, + 385 + ] + ], + [ + [ + false, + 84 + ], + [ + false, + 92 + ], + [ + false, + 386 + ] + ], + [ + [ + true, + 84 + ], + [ + true, + 92 + ], + [ + false, + 386 + ] + ], + [ + [ + true, + 84 + ], + [ + false, + 92 + ], + [ + true, + 386 + ] + ], + [ + [ + true, + 92 + ], + [ + false, + 84 + ], + [ + true, + 386 + ] + ], + [ + [ + false, + 386 + ] + ], + [ + [ + false, + 85 + ], + [ + false, + 93 + ], + [ + false, + 387 + ] + ], + [ + [ + true, + 85 + ], + [ + true, + 93 + ], + [ + false, + 387 + ] + ], + [ + [ + true, + 85 + ], + [ + false, + 93 + ], + [ + true, + 387 + ] + ], + [ + [ + true, + 93 + ], + [ + false, + 85 + ], + [ + true, + 387 + ] + ], + [ + [ + false, + 387 + ] + ], + [ + [ + false, + 86 + ], + [ + false, + 94 + ], + [ + false, + 388 + ] + ], + [ + [ + true, + 86 + ], + [ + true, + 94 + ], + [ + false, + 388 + ] + ], + [ + [ + true, + 86 + ], + [ + false, + 94 + ], + [ + true, + 388 + ] + ], + [ + [ + true, + 94 + ], + [ + false, + 86 + ], + [ + true, + 388 + ] + ], + [ + [ + false, + 388 + ] + ], + [ + [ + false, + 87 + ], + [ + false, + 95 + ], + [ + false, + 389 + ] + ], + [ + [ + true, + 87 + ], + [ + true, + 95 + ], + [ + false, + 389 + ] + ], + [ + [ + true, + 87 + ], + [ + false, + 95 + ], + [ + true, + 389 + ] + ], + [ + [ + true, + 95 + ], + [ + false, + 87 + ], + [ + true, + 389 + ] + ], + [ + [ + false, + 389 + ] + ], + [ + [ + true, + 81 + ], + [ + false, + 89 + ], + [ + false, + 390 + ] + ], + [ + [ + true, + 89 + ], + [ + false, + 81 + ], + [ + false, + 390 + ] + ], + [ + [ + true, + 390 + ], + [ + false, + 81 + ], + [ + false, + 89 + ] + ], + [ + [ + true, + 81 + ], + [ + true, + 89 + ], + [ + true, + 390 + ] + ], + [ + [ + false, + 390 + ] + ], + [ + [ + true, + 82 + ], + [ + false, + 90 + ], + [ + false, + 391 + ] + ], + [ + [ + true, + 90 + ], + [ + false, + 82 + ], + [ + false, + 391 + ] + ], + [ + [ + true, + 391 + ], + [ + false, + 82 + ], + [ + false, + 90 + ] + ], + [ + [ + true, + 82 + ], + [ + true, + 90 + ], + [ + true, + 391 + ] + ], + [ + [ + false, + 391 + ] + ], + [ + [ + false, + 89 + ], + [ + false, + 97 + ], + [ + false, + 392 + ] + ], + [ + [ + true, + 89 + ], + [ + true, + 97 + ], + [ + false, + 392 + ] + ], + [ + [ + true, + 89 + ], + [ + false, + 97 + ], + [ + true, + 392 + ] + ], + [ + [ + false, + 89 + ], + [ + true, + 97 + ], + [ + true, + 392 + ] + ], + [ + [ + false, + 392 + ] + ], + [ + [ + false, + 90 + ], + [ + false, + 98 + ], + [ + false, + 393 + ] + ], + [ + [ + true, + 90 + ], + [ + true, + 98 + ], + [ + false, + 393 + ] + ], + [ + [ + true, + 90 + ], + [ + false, + 98 + ], + [ + true, + 393 + ] + ], + [ + [ + true, + 98 + ], + [ + false, + 90 + ], + [ + true, + 393 + ] + ], + [ + [ + false, + 393 + ] + ], + [ + [ + false, + 93 + ], + [ + false, + 101 + ], + [ + false, + 394 + ] + ], + [ + [ + true, + 93 + ], + [ + true, + 101 + ], + [ + false, + 394 + ] + ], + [ + [ + true, + 93 + ], + [ + false, + 101 + ], + [ + true, + 394 + ] + ], + [ + [ + true, + 101 + ], + [ + false, + 93 + ], + [ + true, + 394 + ] + ], + [ + [ + false, + 394 + ] + ], + [ + [ + false, + 94 + ], + [ + false, + 102 + ], + [ + false, + 395 + ] + ], + [ + [ + true, + 94 + ], + [ + true, + 102 + ], + [ + false, + 395 + ] + ], + [ + [ + true, + 94 + ], + [ + false, + 102 + ], + [ + true, + 395 + ] + ], + [ + [ + true, + 102 + ], + [ + false, + 94 + ], + [ + true, + 395 + ] + ], + [ + [ + false, + 395 + ] + ], + [ + [ + false, + 95 + ], + [ + false, + 103 + ], + [ + false, + 396 + ] + ], + [ + [ + true, + 95 + ], + [ + true, + 103 + ], + [ + false, + 396 + ] + ], + [ + [ + true, + 95 + ], + [ + false, + 103 + ], + [ + true, + 396 + ] + ], + [ + [ + true, + 103 + ], + [ + false, + 95 + ], + [ + true, + 396 + ] + ], + [ + [ + false, + 396 + ] + ], + [ + [ + true, + 91 + ], + [ + false, + 99 + ], + [ + false, + 397 + ] + ], + [ + [ + true, + 99 + ], + [ + false, + 91 + ], + [ + false, + 397 + ] + ], + [ + [ + true, + 397 + ], + [ + false, + 91 + ], + [ + false, + 99 + ] + ], + [ + [ + true, + 91 + ], + [ + true, + 99 + ], + [ + true, + 397 + ] + ], + [ + [ + false, + 397 + ] + ], + [ + [ + true, + 92 + ], + [ + false, + 100 + ], + [ + false, + 398 + ] + ], + [ + [ + true, + 100 + ], + [ + false, + 92 + ], + [ + false, + 398 + ] + ], + [ + [ + true, + 398 + ], + [ + false, + 92 + ], + [ + false, + 100 + ] + ], + [ + [ + true, + 92 + ], + [ + true, + 100 + ], + [ + true, + 398 + ] + ], + [ + [ + false, + 398 + ] + ], + [ + [ + false, + 102 + ], + [ + false, + 110 + ], + [ + false, + 399 + ] + ], + [ + [ + true, + 102 + ], + [ + true, + 110 + ], + [ + false, + 399 + ] + ], + [ + [ + true, + 102 + ], + [ + false, + 110 + ], + [ + true, + 399 + ] + ], + [ + [ + true, + 110 + ], + [ + false, + 102 + ], + [ + true, + 399 + ] + ], + [ + [ + false, + 399 + ] + ], + [ + [ + false, + 103 + ], + [ + false, + 111 + ], + [ + false, + 400 + ] + ], + [ + [ + true, + 103 + ], + [ + true, + 111 + ], + [ + false, + 400 + ] + ], + [ + [ + true, + 103 + ], + [ + false, + 111 + ], + [ + true, + 400 + ] + ], + [ + [ + true, + 111 + ], + [ + false, + 103 + ], + [ + true, + 400 + ] + ], + [ + [ + false, + 400 + ] + ], + [ + [ + true, + 96 + ], + [ + false, + 104 + ], + [ + false, + 401 + ] + ], + [ + [ + true, + 104 + ], + [ + false, + 96 + ], + [ + false, + 401 + ] + ], + [ + [ + true, + 401 + ], + [ + false, + 96 + ], + [ + false, + 104 + ] + ], + [ + [ + true, + 96 + ], + [ + true, + 104 + ], + [ + true, + 401 + ] + ], + [ + [ + false, + 401 + ] + ], + [ + [ + true, + 98 + ], + [ + false, + 106 + ], + [ + false, + 402 + ] + ], + [ + [ + true, + 106 + ], + [ + false, + 98 + ], + [ + false, + 402 + ] + ], + [ + [ + true, + 402 + ], + [ + false, + 98 + ], + [ + false, + 106 + ] + ], + [ + [ + true, + 98 + ], + [ + true, + 106 + ], + [ + true, + 402 + ] + ], + [ + [ + false, + 402 + ] + ], + [ + [ + true, + 99 + ], + [ + false, + 107 + ], + [ + false, + 403 + ] + ], + [ + [ + true, + 107 + ], + [ + false, + 99 + ], + [ + false, + 403 + ] + ], + [ + [ + true, + 403 + ], + [ + false, + 99 + ], + [ + false, + 107 + ] + ], + [ + [ + true, + 99 + ], + [ + true, + 107 + ], + [ + true, + 403 + ] + ], + [ + [ + false, + 403 + ] + ], + [ + [ + true, + 100 + ], + [ + false, + 108 + ], + [ + false, + 404 + ] + ], + [ + [ + true, + 108 + ], + [ + false, + 100 + ], + [ + false, + 404 + ] + ], + [ + [ + true, + 404 + ], + [ + false, + 100 + ], + [ + false, + 108 + ] + ], + [ + [ + true, + 100 + ], + [ + true, + 108 + ], + [ + true, + 404 + ] + ], + [ + [ + false, + 404 + ] + ], + [ + [ + true, + 101 + ], + [ + false, + 109 + ], + [ + false, + 405 + ] + ], + [ + [ + true, + 109 + ], + [ + false, + 101 + ], + [ + false, + 405 + ] + ], + [ + [ + true, + 405 + ], + [ + false, + 101 + ], + [ + false, + 109 + ] + ], + [ + [ + true, + 101 + ], + [ + true, + 109 + ], + [ + true, + 405 + ] + ], + [ + [ + false, + 405 + ] + ], + [ + [ + false, + 109 + ], + [ + false, + 117 + ], + [ + false, + 406 + ] + ], + [ + [ + true, + 109 + ], + [ + true, + 117 + ], + [ + false, + 406 + ] + ], + [ + [ + true, + 109 + ], + [ + false, + 117 + ], + [ + true, + 406 + ] + ], + [ + [ + true, + 117 + ], + [ + false, + 109 + ], + [ + true, + 406 + ] + ], + [ + [ + false, + 406 + ] + ], + [ + [ + false, + 110 + ], + [ + false, + 118 + ], + [ + false, + 407 + ] + ], + [ + [ + true, + 110 + ], + [ + true, + 118 + ], + [ + false, + 407 + ] + ], + [ + [ + true, + 110 + ], + [ + false, + 118 + ], + [ + true, + 407 + ] + ], + [ + [ + true, + 118 + ], + [ + false, + 110 + ], + [ + true, + 407 + ] + ], + [ + [ + false, + 407 + ] + ], + [ + [ + false, + 111 + ], + [ + false, + 119 + ], + [ + false, + 408 + ] + ], + [ + [ + true, + 111 + ], + [ + true, + 119 + ], + [ + false, + 408 + ] + ], + [ + [ + true, + 111 + ], + [ + false, + 119 + ], + [ + true, + 408 + ] + ], + [ + [ + true, + 119 + ], + [ + false, + 111 + ], + [ + true, + 408 + ] + ], + [ + [ + false, + 408 + ] + ], + [ + [ + false, + 112 + ], + [ + true, + 104 + ], + [ + false, + 409 + ] + ], + [ + [ + true, + 112 + ], + [ + false, + 104 + ], + [ + false, + 409 + ] + ], + [ + [ + true, + 409 + ], + [ + false, + 104 + ], + [ + false, + 112 + ] + ], + [ + [ + true, + 104 + ], + [ + true, + 112 + ], + [ + true, + 409 + ] + ], + [ + [ + false, + 409 + ] + ], + [ + [ + true, + 105 + ], + [ + false, + 113 + ], + [ + false, + 410 + ] + ], + [ + [ + true, + 113 + ], + [ + false, + 105 + ], + [ + false, + 410 + ] + ], + [ + [ + true, + 410 + ], + [ + false, + 105 + ], + [ + false, + 113 + ] + ], + [ + [ + true, + 105 + ], + [ + true, + 113 + ], + [ + true, + 410 + ] + ], + [ + [ + false, + 410 + ] + ], + [ + [ + true, + 107 + ], + [ + false, + 115 + ], + [ + false, + 411 + ] + ], + [ + [ + true, + 115 + ], + [ + false, + 107 + ], + [ + false, + 411 + ] + ], + [ + [ + true, + 411 + ], + [ + false, + 107 + ], + [ + false, + 115 + ] + ], + [ + [ + true, + 107 + ], + [ + true, + 115 + ], + [ + true, + 411 + ] + ], + [ + [ + false, + 411 + ] + ], + [ + [ + true, + 108 + ], + [ + false, + 116 + ], + [ + false, + 412 + ] + ], + [ + [ + true, + 116 + ], + [ + false, + 108 + ], + [ + false, + 412 + ] + ], + [ + [ + true, + 412 + ], + [ + false, + 108 + ], + [ + false, + 116 + ] + ], + [ + [ + true, + 108 + ], + [ + true, + 116 + ], + [ + true, + 412 + ] + ], + [ + [ + false, + 412 + ] + ], + [ + [ + false, + 115 + ], + [ + false, + 123 + ], + [ + false, + 413 + ] + ], + [ + [ + true, + 115 + ], + [ + true, + 123 + ], + [ + false, + 413 + ] + ], + [ + [ + true, + 115 + ], + [ + false, + 123 + ], + [ + true, + 413 + ] + ], + [ + [ + false, + 115 + ], + [ + true, + 123 + ], + [ + true, + 413 + ] + ], + [ + [ + false, + 413 + ] + ], + [ + [ + false, + 116 + ], + [ + false, + 124 + ], + [ + false, + 414 + ] + ], + [ + [ + true, + 116 + ], + [ + true, + 124 + ], + [ + false, + 414 + ] + ], + [ + [ + true, + 116 + ], + [ + false, + 124 + ], + [ + true, + 414 + ] + ], + [ + [ + true, + 124 + ], + [ + false, + 116 + ], + [ + true, + 414 + ] + ], + [ + [ + false, + 414 + ] + ], + [ + [ + false, + 118 + ], + [ + false, + 126 + ], + [ + false, + 415 + ] + ], + [ + [ + true, + 118 + ], + [ + true, + 126 + ], + [ + false, + 415 + ] + ], + [ + [ + true, + 118 + ], + [ + false, + 126 + ], + [ + true, + 415 + ] + ], + [ + [ + true, + 126 + ], + [ + false, + 118 + ], + [ + true, + 415 + ] + ], + [ + [ + false, + 415 + ] + ], + [ + [ + false, + 119 + ], + [ + false, + 127 + ], + [ + false, + 416 + ] + ], + [ + [ + true, + 119 + ], + [ + true, + 127 + ], + [ + false, + 416 + ] + ], + [ + [ + true, + 119 + ], + [ + false, + 127 + ], + [ + true, + 416 + ] + ], + [ + [ + true, + 127 + ], + [ + false, + 119 + ], + [ + true, + 416 + ] + ], + [ + [ + false, + 416 + ] + ], + [ + [ + false, + 121 + ], + [ + true, + 113 + ], + [ + false, + 417 + ] + ], + [ + [ + true, + 121 + ], + [ + false, + 113 + ], + [ + false, + 417 + ] + ], + [ + [ + true, + 417 + ], + [ + false, + 113 + ], + [ + false, + 121 + ] + ], + [ + [ + true, + 113 + ], + [ + true, + 121 + ], + [ + true, + 417 + ] + ], + [ + [ + false, + 417 + ] + ], + [ + [ + false, + 122 + ], + [ + true, + 114 + ], + [ + false, + 418 + ] + ], + [ + [ + true, + 122 + ], + [ + false, + 114 + ], + [ + false, + 418 + ] + ], + [ + [ + true, + 418 + ], + [ + false, + 114 + ], + [ + false, + 122 + ] + ], + [ + [ + true, + 114 + ], + [ + true, + 122 + ], + [ + true, + 418 + ] + ], + [ + [ + false, + 418 + ] + ], + [ + [ + true, + 117 + ], + [ + false, + 125 + ], + [ + false, + 419 + ] + ], + [ + [ + true, + 125 + ], + [ + false, + 117 + ], + [ + false, + 419 + ] + ], + [ + [ + true, + 419 + ], + [ + false, + 117 + ], + [ + false, + 125 + ] + ], + [ + [ + true, + 117 + ], + [ + true, + 125 + ], + [ + true, + 419 + ] + ], + [ + [ + false, + 419 + ] + ], + [ + [ + false, + 121 + ], + [ + false, + 129 + ], + [ + false, + 420 + ] + ], + [ + [ + true, + 121 + ], + [ + true, + 129 + ], + [ + false, + 420 + ] + ], + [ + [ + true, + 121 + ], + [ + false, + 129 + ], + [ + true, + 420 + ] + ], + [ + [ + false, + 121 + ], + [ + true, + 129 + ], + [ + true, + 420 + ] + ], + [ + [ + false, + 420 + ] + ], + [ + [ + false, + 120 + ], + [ + false, + 128 + ], + [ + false, + 421 + ] + ], + [ + [ + true, + 120 + ], + [ + true, + 128 + ], + [ + false, + 421 + ] + ], + [ + [ + true, + 120 + ], + [ + false, + 128 + ], + [ + true, + 421 + ] + ], + [ + [ + false, + 120 + ], + [ + true, + 128 + ], + [ + true, + 421 + ] + ], + [ + [ + false, + 421 + ] + ], + [ + [ + false, + 125 + ], + [ + false, + 133 + ], + [ + false, + 422 + ] + ], + [ + [ + true, + 125 + ], + [ + true, + 133 + ], + [ + false, + 422 + ] + ], + [ + [ + true, + 125 + ], + [ + false, + 133 + ], + [ + true, + 422 + ] + ], + [ + [ + true, + 133 + ], + [ + false, + 125 + ], + [ + true, + 422 + ] + ], + [ + [ + false, + 422 + ] + ], + [ + [ + false, + 126 + ], + [ + false, + 134 + ], + [ + false, + 423 + ] + ], + [ + [ + true, + 126 + ], + [ + true, + 134 + ], + [ + false, + 423 + ] + ], + [ + [ + true, + 126 + ], + [ + false, + 134 + ], + [ + true, + 423 + ] + ], + [ + [ + true, + 134 + ], + [ + false, + 126 + ], + [ + true, + 423 + ] + ], + [ + [ + false, + 423 + ] + ], + [ + [ + false, + 127 + ], + [ + false, + 135 + ], + [ + false, + 424 + ] + ], + [ + [ + true, + 127 + ], + [ + true, + 135 + ], + [ + false, + 424 + ] + ], + [ + [ + true, + 127 + ], + [ + false, + 135 + ], + [ + true, + 424 + ] + ], + [ + [ + true, + 135 + ], + [ + false, + 127 + ], + [ + true, + 424 + ] + ], + [ + [ + false, + 424 + ] + ], + [ + [ + true, + 123 + ], + [ + false, + 131 + ], + [ + false, + 425 + ] + ], + [ + [ + true, + 131 + ], + [ + false, + 123 + ], + [ + false, + 425 + ] + ], + [ + [ + true, + 425 + ], + [ + false, + 123 + ], + [ + false, + 131 + ] + ], + [ + [ + true, + 123 + ], + [ + true, + 131 + ], + [ + true, + 425 + ] + ], + [ + [ + false, + 425 + ] + ], + [ + [ + true, + 124 + ], + [ + false, + 132 + ], + [ + false, + 426 + ] + ], + [ + [ + true, + 132 + ], + [ + false, + 124 + ], + [ + false, + 426 + ] + ], + [ + [ + true, + 426 + ], + [ + false, + 124 + ], + [ + false, + 132 + ] + ], + [ + [ + true, + 124 + ], + [ + true, + 132 + ], + [ + true, + 426 + ] + ], + [ + [ + false, + 426 + ] + ], + [ + [ + false, + 139 + ], + [ + false, + 131 + ], + [ + false, + 427 + ] + ], + [ + [ + true, + 131 + ], + [ + true, + 139 + ], + [ + false, + 427 + ] + ], + [ + [ + true, + 131 + ], + [ + false, + 139 + ], + [ + true, + 427 + ] + ], + [ + [ + true, + 139 + ], + [ + false, + 131 + ], + [ + true, + 427 + ] + ], + [ + [ + false, + 427 + ] + ], + [ + [ + false, + 134 + ], + [ + false, + 142 + ], + [ + false, + 428 + ] + ], + [ + [ + true, + 134 + ], + [ + true, + 142 + ], + [ + false, + 428 + ] + ], + [ + [ + true, + 134 + ], + [ + false, + 142 + ], + [ + true, + 428 + ] + ], + [ + [ + true, + 142 + ], + [ + false, + 134 + ], + [ + true, + 428 + ] + ], + [ + [ + false, + 428 + ] + ], + [ + [ + false, + 135 + ], + [ + false, + 143 + ], + [ + false, + 429 + ] + ], + [ + [ + true, + 135 + ], + [ + true, + 143 + ], + [ + false, + 429 + ] + ], + [ + [ + true, + 135 + ], + [ + false, + 143 + ], + [ + true, + 429 + ] + ], + [ + [ + true, + 143 + ], + [ + false, + 135 + ], + [ + true, + 429 + ] + ], + [ + [ + false, + 429 + ] + ], + [ + [ + true, + 128 + ], + [ + false, + 136 + ], + [ + false, + 430 + ] + ], + [ + [ + true, + 136 + ], + [ + false, + 128 + ], + [ + false, + 430 + ] + ], + [ + [ + true, + 430 + ], + [ + false, + 128 + ], + [ + false, + 136 + ] + ], + [ + [ + true, + 128 + ], + [ + true, + 136 + ], + [ + true, + 430 + ] + ], + [ + [ + false, + 430 + ] + ], + [ + [ + true, + 130 + ], + [ + false, + 138 + ], + [ + false, + 431 + ] + ], + [ + [ + true, + 138 + ], + [ + false, + 130 + ], + [ + false, + 431 + ] + ], + [ + [ + true, + 431 + ], + [ + false, + 130 + ], + [ + false, + 138 + ] + ], + [ + [ + true, + 130 + ], + [ + true, + 138 + ], + [ + true, + 431 + ] + ], + [ + [ + false, + 431 + ] + ], + [ + [ + true, + 132 + ], + [ + false, + 140 + ], + [ + false, + 432 + ] + ], + [ + [ + true, + 140 + ], + [ + false, + 132 + ], + [ + false, + 432 + ] + ], + [ + [ + true, + 432 + ], + [ + false, + 132 + ], + [ + false, + 140 + ] + ], + [ + [ + true, + 132 + ], + [ + true, + 140 + ], + [ + true, + 432 + ] + ], + [ + [ + false, + 432 + ] + ], + [ + [ + true, + 133 + ], + [ + false, + 141 + ], + [ + false, + 433 + ] + ], + [ + [ + true, + 141 + ], + [ + false, + 133 + ], + [ + false, + 433 + ] + ], + [ + [ + true, + 433 + ], + [ + false, + 133 + ], + [ + false, + 141 + ] + ], + [ + [ + true, + 133 + ], + [ + true, + 141 + ], + [ + true, + 433 + ] + ], + [ + [ + false, + 433 + ] + ], + [ + [ + false, + 138 + ], + [ + false, + 146 + ], + [ + false, + 434 + ] + ], + [ + [ + true, + 138 + ], + [ + true, + 146 + ], + [ + false, + 434 + ] + ], + [ + [ + true, + 138 + ], + [ + false, + 146 + ], + [ + true, + 434 + ] + ], + [ + [ + false, + 138 + ], + [ + true, + 146 + ], + [ + true, + 434 + ] + ], + [ + [ + false, + 434 + ] + ], + [ + [ + false, + 136 + ], + [ + false, + 144 + ], + [ + false, + 435 + ] + ], + [ + [ + true, + 136 + ], + [ + true, + 144 + ], + [ + false, + 435 + ] + ], + [ + [ + true, + 136 + ], + [ + false, + 144 + ], + [ + true, + 435 + ] + ], + [ + [ + false, + 136 + ], + [ + true, + 144 + ], + [ + true, + 435 + ] + ], + [ + [ + false, + 435 + ] + ], + [ + [ + false, + 140 + ], + [ + false, + 148 + ], + [ + false, + 436 + ] + ], + [ + [ + true, + 140 + ], + [ + true, + 148 + ], + [ + false, + 436 + ] + ], + [ + [ + true, + 140 + ], + [ + false, + 148 + ], + [ + true, + 436 + ] + ], + [ + [ + true, + 148 + ], + [ + false, + 140 + ], + [ + true, + 436 + ] + ], + [ + [ + false, + 436 + ] + ], + [ + [ + false, + 141 + ], + [ + false, + 149 + ], + [ + false, + 437 + ] + ], + [ + [ + true, + 141 + ], + [ + true, + 149 + ], + [ + false, + 437 + ] + ], + [ + [ + true, + 141 + ], + [ + false, + 149 + ], + [ + true, + 437 + ] + ], + [ + [ + true, + 149 + ], + [ + false, + 141 + ], + [ + true, + 437 + ] + ], + [ + [ + false, + 437 + ] + ], + [ + [ + false, + 143 + ], + [ + false, + 151 + ], + [ + false, + 438 + ] + ], + [ + [ + true, + 143 + ], + [ + true, + 151 + ], + [ + false, + 438 + ] + ], + [ + [ + true, + 143 + ], + [ + false, + 151 + ], + [ + true, + 438 + ] + ], + [ + [ + true, + 151 + ], + [ + false, + 143 + ], + [ + true, + 438 + ] + ], + [ + [ + false, + 438 + ] + ], + [ + [ + true, + 137 + ], + [ + false, + 145 + ], + [ + false, + 439 + ] + ], + [ + [ + true, + 145 + ], + [ + false, + 137 + ], + [ + false, + 439 + ] + ], + [ + [ + true, + 439 + ], + [ + false, + 137 + ], + [ + false, + 145 + ] + ], + [ + [ + true, + 137 + ], + [ + true, + 145 + ], + [ + true, + 439 + ] + ], + [ + [ + false, + 439 + ] + ], + [ + [ + true, + 142 + ], + [ + false, + 150 + ], + [ + false, + 440 + ] + ], + [ + [ + true, + 150 + ], + [ + false, + 142 + ], + [ + false, + 440 + ] + ], + [ + [ + true, + 440 + ], + [ + false, + 142 + ], + [ + false, + 150 + ] + ], + [ + [ + true, + 142 + ], + [ + true, + 150 + ], + [ + true, + 440 + ] + ], + [ + [ + false, + 440 + ] + ], + [ + [ + false, + 147 + ], + [ + false, + 155 + ], + [ + false, + 441 + ] + ], + [ + [ + true, + 147 + ], + [ + true, + 155 + ], + [ + false, + 441 + ] + ], + [ + [ + true, + 147 + ], + [ + false, + 155 + ], + [ + true, + 441 + ] + ], + [ + [ + true, + 155 + ], + [ + false, + 147 + ], + [ + true, + 441 + ] + ], + [ + [ + false, + 441 + ] + ], + [ + [ + false, + 148 + ], + [ + false, + 156 + ], + [ + false, + 442 + ] + ], + [ + [ + true, + 148 + ], + [ + true, + 156 + ], + [ + false, + 442 + ] + ], + [ + [ + true, + 148 + ], + [ + false, + 156 + ], + [ + true, + 442 + ] + ], + [ + [ + true, + 156 + ], + [ + false, + 148 + ], + [ + true, + 442 + ] + ], + [ + [ + false, + 442 + ] + ], + [ + [ + false, + 149 + ], + [ + false, + 157 + ], + [ + false, + 443 + ] + ], + [ + [ + true, + 149 + ], + [ + true, + 157 + ], + [ + false, + 443 + ] + ], + [ + [ + true, + 149 + ], + [ + false, + 157 + ], + [ + true, + 443 + ] + ], + [ + [ + true, + 157 + ], + [ + false, + 149 + ], + [ + true, + 443 + ] + ], + [ + [ + false, + 443 + ] + ], + [ + [ + false, + 151 + ], + [ + false, + 159 + ], + [ + false, + 444 + ] + ], + [ + [ + true, + 151 + ], + [ + true, + 159 + ], + [ + false, + 444 + ] + ], + [ + [ + true, + 151 + ], + [ + false, + 159 + ], + [ + true, + 444 + ] + ], + [ + [ + true, + 159 + ], + [ + false, + 151 + ], + [ + true, + 444 + ] + ], + [ + [ + false, + 444 + ] + ], + [ + [ + true, + 145 + ], + [ + false, + 153 + ], + [ + false, + 445 + ] + ], + [ + [ + true, + 153 + ], + [ + false, + 145 + ], + [ + false, + 445 + ] + ], + [ + [ + true, + 445 + ], + [ + false, + 145 + ], + [ + false, + 153 + ] + ], + [ + [ + true, + 145 + ], + [ + true, + 153 + ], + [ + true, + 445 + ] + ], + [ + [ + false, + 445 + ] + ], + [ + [ + true, + 146 + ], + [ + false, + 154 + ], + [ + false, + 446 + ] + ], + [ + [ + true, + 154 + ], + [ + false, + 146 + ], + [ + false, + 446 + ] + ], + [ + [ + true, + 446 + ], + [ + false, + 146 + ], + [ + false, + 154 + ] + ], + [ + [ + true, + 146 + ], + [ + true, + 154 + ], + [ + true, + 446 + ] + ], + [ + [ + false, + 446 + ] + ], + [ + [ + true, + 150 + ], + [ + false, + 158 + ], + [ + false, + 447 + ] + ], + [ + [ + true, + 158 + ], + [ + false, + 150 + ], + [ + false, + 447 + ] + ], + [ + [ + true, + 447 + ], + [ + false, + 150 + ], + [ + false, + 158 + ] + ], + [ + [ + true, + 150 + ], + [ + true, + 158 + ], + [ + true, + 447 + ] + ], + [ + [ + false, + 447 + ] + ], + [ + [ + false, + 155 + ], + [ + false, + 163 + ], + [ + false, + 448 + ] + ], + [ + [ + true, + 155 + ], + [ + true, + 163 + ], + [ + false, + 448 + ] + ], + [ + [ + true, + 155 + ], + [ + false, + 163 + ], + [ + true, + 448 + ] + ], + [ + [ + true, + 163 + ], + [ + false, + 155 + ], + [ + true, + 448 + ] + ], + [ + [ + false, + 448 + ] + ], + [ + [ + false, + 156 + ], + [ + false, + 164 + ], + [ + false, + 449 + ] + ], + [ + [ + true, + 156 + ], + [ + true, + 164 + ], + [ + false, + 449 + ] + ], + [ + [ + true, + 156 + ], + [ + false, + 164 + ], + [ + true, + 449 + ] + ], + [ + [ + true, + 164 + ], + [ + false, + 156 + ], + [ + true, + 449 + ] + ], + [ + [ + false, + 449 + ] + ], + [ + [ + false, + 157 + ], + [ + false, + 165 + ], + [ + false, + 450 + ] + ], + [ + [ + true, + 157 + ], + [ + true, + 165 + ], + [ + false, + 450 + ] + ], + [ + [ + true, + 157 + ], + [ + false, + 165 + ], + [ + true, + 450 + ] + ], + [ + [ + true, + 165 + ], + [ + false, + 157 + ], + [ + true, + 450 + ] + ], + [ + [ + false, + 450 + ] + ], + [ + [ + false, + 159 + ], + [ + false, + 167 + ], + [ + false, + 451 + ] + ], + [ + [ + true, + 159 + ], + [ + true, + 167 + ], + [ + false, + 451 + ] + ], + [ + [ + true, + 159 + ], + [ + false, + 167 + ], + [ + true, + 451 + ] + ], + [ + [ + true, + 167 + ], + [ + false, + 159 + ], + [ + true, + 451 + ] + ], + [ + [ + false, + 451 + ] + ], + [ + [ + true, + 152 + ], + [ + false, + 160 + ], + [ + false, + 452 + ] + ], + [ + [ + true, + 160 + ], + [ + false, + 152 + ], + [ + false, + 452 + ] + ], + [ + [ + true, + 452 + ], + [ + false, + 152 + ], + [ + false, + 160 + ] + ], + [ + [ + true, + 152 + ], + [ + true, + 160 + ], + [ + true, + 452 + ] + ], + [ + [ + false, + 452 + ] + ], + [ + [ + true, + 154 + ], + [ + false, + 162 + ], + [ + false, + 453 + ] + ], + [ + [ + true, + 162 + ], + [ + false, + 154 + ], + [ + false, + 453 + ] + ], + [ + [ + true, + 453 + ], + [ + false, + 154 + ], + [ + false, + 162 + ] + ], + [ + [ + true, + 154 + ], + [ + true, + 162 + ], + [ + true, + 453 + ] + ], + [ + [ + false, + 453 + ] + ], + [ + [ + true, + 158 + ], + [ + false, + 166 + ], + [ + false, + 454 + ] + ], + [ + [ + true, + 166 + ], + [ + false, + 158 + ], + [ + false, + 454 + ] + ], + [ + [ + true, + 454 + ], + [ + false, + 158 + ], + [ + false, + 166 + ] + ], + [ + [ + true, + 158 + ], + [ + true, + 166 + ], + [ + true, + 454 + ] + ], + [ + [ + false, + 454 + ] + ], + [ + [ + false, + 162 + ], + [ + false, + 170 + ], + [ + false, + 455 + ] + ], + [ + [ + true, + 162 + ], + [ + true, + 170 + ], + [ + false, + 455 + ] + ], + [ + [ + true, + 162 + ], + [ + false, + 170 + ], + [ + true, + 455 + ] + ], + [ + [ + false, + 162 + ], + [ + true, + 170 + ], + [ + true, + 455 + ] + ], + [ + [ + false, + 455 + ] + ], + [ + [ + false, + 163 + ], + [ + false, + 171 + ], + [ + false, + 456 + ] + ], + [ + [ + true, + 163 + ], + [ + true, + 171 + ], + [ + false, + 456 + ] + ], + [ + [ + true, + 163 + ], + [ + false, + 171 + ], + [ + true, + 456 + ] + ], + [ + [ + true, + 171 + ], + [ + false, + 163 + ], + [ + true, + 456 + ] + ], + [ + [ + false, + 456 + ] + ], + [ + [ + false, + 164 + ], + [ + false, + 172 + ], + [ + false, + 457 + ] + ], + [ + [ + true, + 164 + ], + [ + true, + 172 + ], + [ + false, + 457 + ] + ], + [ + [ + true, + 164 + ], + [ + false, + 172 + ], + [ + true, + 457 + ] + ], + [ + [ + true, + 172 + ], + [ + false, + 164 + ], + [ + true, + 457 + ] + ], + [ + [ + false, + 457 + ] + ], + [ + [ + false, + 165 + ], + [ + false, + 173 + ], + [ + false, + 458 + ] + ], + [ + [ + true, + 165 + ], + [ + true, + 173 + ], + [ + false, + 458 + ] + ], + [ + [ + true, + 165 + ], + [ + false, + 173 + ], + [ + true, + 458 + ] + ], + [ + [ + true, + 173 + ], + [ + false, + 165 + ], + [ + true, + 458 + ] + ], + [ + [ + false, + 458 + ] + ], + [ + [ + false, + 167 + ], + [ + false, + 175 + ], + [ + false, + 459 + ] + ], + [ + [ + true, + 167 + ], + [ + true, + 175 + ], + [ + false, + 459 + ] + ], + [ + [ + true, + 167 + ], + [ + false, + 175 + ], + [ + true, + 459 + ] + ], + [ + [ + true, + 175 + ], + [ + false, + 167 + ], + [ + true, + 459 + ] + ], + [ + [ + false, + 459 + ] + ], + [ + [ + true, + 160 + ], + [ + false, + 168 + ], + [ + false, + 460 + ] + ], + [ + [ + true, + 168 + ], + [ + false, + 160 + ], + [ + false, + 460 + ] + ], + [ + [ + true, + 460 + ], + [ + false, + 160 + ], + [ + false, + 168 + ] + ], + [ + [ + true, + 160 + ], + [ + true, + 168 + ], + [ + true, + 460 + ] + ], + [ + [ + false, + 460 + ] + ], + [ + [ + true, + 166 + ], + [ + false, + 174 + ], + [ + false, + 461 + ] + ], + [ + [ + true, + 174 + ], + [ + false, + 166 + ], + [ + false, + 461 + ] + ], + [ + [ + true, + 461 + ], + [ + false, + 166 + ], + [ + false, + 174 + ] + ], + [ + [ + true, + 166 + ], + [ + true, + 174 + ], + [ + true, + 461 + ] + ], + [ + [ + false, + 461 + ] + ], + [ + [ + false, + 179 + ], + [ + false, + 171 + ], + [ + false, + 462 + ] + ], + [ + [ + true, + 171 + ], + [ + true, + 179 + ], + [ + false, + 462 + ] + ], + [ + [ + true, + 171 + ], + [ + false, + 179 + ], + [ + true, + 462 + ] + ], + [ + [ + true, + 179 + ], + [ + false, + 171 + ], + [ + true, + 462 + ] + ], + [ + [ + false, + 462 + ] + ], + [ + [ + false, + 173 + ], + [ + false, + 181 + ], + [ + false, + 463 + ] + ], + [ + [ + true, + 173 + ], + [ + true, + 181 + ], + [ + false, + 463 + ] + ], + [ + [ + true, + 173 + ], + [ + false, + 181 + ], + [ + true, + 463 + ] + ], + [ + [ + true, + 181 + ], + [ + false, + 173 + ], + [ + true, + 463 + ] + ], + [ + [ + false, + 463 + ] + ], + [ + [ + false, + 175 + ], + [ + false, + 183 + ], + [ + false, + 464 + ] + ], + [ + [ + true, + 175 + ], + [ + true, + 183 + ], + [ + false, + 464 + ] + ], + [ + [ + true, + 175 + ], + [ + false, + 183 + ], + [ + true, + 464 + ] + ], + [ + [ + true, + 183 + ], + [ + false, + 175 + ], + [ + true, + 464 + ] + ], + [ + [ + false, + 464 + ] + ], + [ + [ + true, + 168 + ], + [ + false, + 176 + ], + [ + false, + 465 + ] + ], + [ + [ + true, + 176 + ], + [ + false, + 168 + ], + [ + false, + 465 + ] + ], + [ + [ + true, + 465 + ], + [ + false, + 168 + ], + [ + false, + 176 + ] + ], + [ + [ + true, + 168 + ], + [ + true, + 176 + ], + [ + true, + 465 + ] + ], + [ + [ + false, + 465 + ] + ], + [ + [ + true, + 170 + ], + [ + false, + 178 + ], + [ + false, + 466 + ] + ], + [ + [ + true, + 178 + ], + [ + false, + 170 + ], + [ + false, + 466 + ] + ], + [ + [ + true, + 466 + ], + [ + false, + 170 + ], + [ + false, + 178 + ] + ], + [ + [ + true, + 170 + ], + [ + true, + 178 + ], + [ + true, + 466 + ] + ], + [ + [ + false, + 466 + ] + ], + [ + [ + true, + 172 + ], + [ + false, + 180 + ], + [ + false, + 467 + ] + ], + [ + [ + true, + 180 + ], + [ + false, + 172 + ], + [ + false, + 467 + ] + ], + [ + [ + true, + 467 + ], + [ + false, + 172 + ], + [ + false, + 180 + ] + ], + [ + [ + true, + 172 + ], + [ + true, + 180 + ], + [ + true, + 467 + ] + ], + [ + [ + false, + 467 + ] + ], + [ + [ + true, + 174 + ], + [ + false, + 182 + ], + [ + false, + 468 + ] + ], + [ + [ + true, + 182 + ], + [ + false, + 174 + ], + [ + false, + 468 + ] + ], + [ + [ + true, + 468 + ], + [ + false, + 174 + ], + [ + false, + 182 + ] + ], + [ + [ + true, + 174 + ], + [ + true, + 182 + ], + [ + true, + 468 + ] + ], + [ + [ + false, + 468 + ] + ], + [ + [ + false, + 177 + ], + [ + false, + 185 + ], + [ + false, + 469 + ] + ], + [ + [ + true, + 177 + ], + [ + true, + 185 + ], + [ + false, + 469 + ] + ], + [ + [ + true, + 177 + ], + [ + false, + 185 + ], + [ + true, + 469 + ] + ], + [ + [ + false, + 177 + ], + [ + true, + 185 + ], + [ + true, + 469 + ] + ], + [ + [ + false, + 469 + ] + ], + [ + [ + false, + 176 + ], + [ + false, + 184 + ], + [ + false, + 470 + ] + ], + [ + [ + true, + 176 + ], + [ + true, + 184 + ], + [ + false, + 470 + ] + ], + [ + [ + true, + 176 + ], + [ + false, + 184 + ], + [ + true, + 470 + ] + ], + [ + [ + false, + 176 + ], + [ + true, + 184 + ], + [ + true, + 470 + ] + ], + [ + [ + false, + 470 + ] + ], + [ + [ + false, + 181 + ], + [ + false, + 189 + ], + [ + false, + 471 + ] + ], + [ + [ + true, + 181 + ], + [ + true, + 189 + ], + [ + false, + 471 + ] + ], + [ + [ + true, + 181 + ], + [ + false, + 189 + ], + [ + true, + 471 + ] + ], + [ + [ + true, + 189 + ], + [ + false, + 181 + ], + [ + true, + 471 + ] + ], + [ + [ + false, + 471 + ] + ], + [ + [ + false, + 183 + ], + [ + false, + 191 + ], + [ + false, + 472 + ] + ], + [ + [ + true, + 183 + ], + [ + true, + 191 + ], + [ + false, + 472 + ] + ], + [ + [ + true, + 183 + ], + [ + false, + 191 + ], + [ + true, + 472 + ] + ], + [ + [ + true, + 191 + ], + [ + false, + 183 + ], + [ + true, + 472 + ] + ], + [ + [ + false, + 472 + ] + ], + [ + [ + true, + 178 + ], + [ + false, + 186 + ], + [ + false, + 473 + ] + ], + [ + [ + true, + 186 + ], + [ + false, + 178 + ], + [ + false, + 473 + ] + ], + [ + [ + true, + 473 + ], + [ + false, + 178 + ], + [ + false, + 186 + ] + ], + [ + [ + true, + 178 + ], + [ + true, + 186 + ], + [ + true, + 473 + ] + ], + [ + [ + false, + 473 + ] + ], + [ + [ + true, + 180 + ], + [ + false, + 188 + ], + [ + false, + 474 + ] + ], + [ + [ + true, + 188 + ], + [ + false, + 180 + ], + [ + false, + 474 + ] + ], + [ + [ + true, + 474 + ], + [ + false, + 180 + ], + [ + false, + 188 + ] + ], + [ + [ + true, + 180 + ], + [ + true, + 188 + ], + [ + true, + 474 + ] + ], + [ + [ + false, + 474 + ] + ], + [ + [ + true, + 182 + ], + [ + false, + 190 + ], + [ + false, + 475 + ] + ], + [ + [ + true, + 190 + ], + [ + false, + 182 + ], + [ + false, + 475 + ] + ], + [ + [ + true, + 475 + ], + [ + false, + 182 + ], + [ + false, + 190 + ] + ], + [ + [ + true, + 182 + ], + [ + true, + 190 + ], + [ + true, + 475 + ] + ], + [ + [ + false, + 475 + ] + ], + [ + [ + false, + 184 + ], + [ + false, + 192 + ], + [ + false, + 476 + ] + ], + [ + [ + true, + 184 + ], + [ + true, + 192 + ], + [ + false, + 476 + ] + ], + [ + [ + true, + 184 + ], + [ + false, + 192 + ], + [ + true, + 476 + ] + ], + [ + [ + false, + 184 + ], + [ + true, + 192 + ], + [ + true, + 476 + ] + ], + [ + [ + false, + 476 + ] + ], + [ + [ + false, + 188 + ], + [ + false, + 196 + ], + [ + false, + 477 + ] + ], + [ + [ + true, + 188 + ], + [ + true, + 196 + ], + [ + false, + 477 + ] + ], + [ + [ + true, + 188 + ], + [ + false, + 196 + ], + [ + true, + 477 + ] + ], + [ + [ + true, + 196 + ], + [ + false, + 188 + ], + [ + true, + 477 + ] + ], + [ + [ + false, + 477 + ] + ], + [ + [ + false, + 190 + ], + [ + false, + 198 + ], + [ + false, + 478 + ] + ], + [ + [ + true, + 190 + ], + [ + true, + 198 + ], + [ + false, + 478 + ] + ], + [ + [ + true, + 190 + ], + [ + false, + 198 + ], + [ + true, + 478 + ] + ], + [ + [ + true, + 198 + ], + [ + false, + 190 + ], + [ + true, + 478 + ] + ], + [ + [ + false, + 478 + ] + ], + [ + [ + false, + 191 + ], + [ + false, + 199 + ], + [ + false, + 479 + ] + ], + [ + [ + true, + 191 + ], + [ + true, + 199 + ], + [ + false, + 479 + ] + ], + [ + [ + true, + 191 + ], + [ + false, + 199 + ], + [ + true, + 479 + ] + ], + [ + [ + true, + 199 + ], + [ + false, + 191 + ], + [ + true, + 479 + ] + ], + [ + [ + false, + 479 + ] + ], + [ + [ + false, + 194 + ], + [ + true, + 186 + ], + [ + false, + 480 + ] + ], + [ + [ + true, + 194 + ], + [ + false, + 186 + ], + [ + false, + 480 + ] + ], + [ + [ + true, + 480 + ], + [ + false, + 186 + ], + [ + false, + 194 + ] + ], + [ + [ + true, + 186 + ], + [ + true, + 194 + ], + [ + true, + 480 + ] + ], + [ + [ + false, + 480 + ] + ], + [ + [ + true, + 187 + ], + [ + false, + 195 + ], + [ + false, + 481 + ] + ], + [ + [ + true, + 195 + ], + [ + false, + 187 + ], + [ + false, + 481 + ] + ], + [ + [ + true, + 481 + ], + [ + false, + 187 + ], + [ + false, + 195 + ] + ], + [ + [ + true, + 187 + ], + [ + true, + 195 + ], + [ + true, + 481 + ] + ], + [ + [ + false, + 481 + ] + ], + [ + [ + true, + 189 + ], + [ + false, + 197 + ], + [ + false, + 482 + ] + ], + [ + [ + true, + 197 + ], + [ + false, + 189 + ], + [ + false, + 482 + ] + ], + [ + [ + true, + 482 + ], + [ + false, + 189 + ], + [ + false, + 197 + ] + ], + [ + [ + true, + 189 + ], + [ + true, + 197 + ], + [ + true, + 482 + ] + ], + [ + [ + false, + 482 + ] + ], + [ + [ + false, + 196 + ], + [ + false, + 204 + ], + [ + false, + 483 + ] + ], + [ + [ + true, + 196 + ], + [ + true, + 204 + ], + [ + false, + 483 + ] + ], + [ + [ + true, + 196 + ], + [ + false, + 204 + ], + [ + true, + 483 + ] + ], + [ + [ + true, + 204 + ], + [ + false, + 196 + ], + [ + true, + 483 + ] + ], + [ + [ + false, + 483 + ] + ], + [ + [ + false, + 199 + ], + [ + false, + 207 + ], + [ + false, + 484 + ] + ], + [ + [ + true, + 199 + ], + [ + true, + 207 + ], + [ + false, + 484 + ] + ], + [ + [ + true, + 199 + ], + [ + false, + 207 + ], + [ + true, + 484 + ] + ], + [ + [ + true, + 207 + ], + [ + false, + 199 + ], + [ + true, + 484 + ] + ], + [ + [ + false, + 484 + ] + ], + [ + [ + true, + 192 + ], + [ + false, + 200 + ], + [ + false, + 485 + ] + ], + [ + [ + true, + 200 + ], + [ + false, + 192 + ], + [ + false, + 485 + ] + ], + [ + [ + true, + 485 + ], + [ + false, + 192 + ], + [ + false, + 200 + ] + ], + [ + [ + true, + 192 + ], + [ + true, + 200 + ], + [ + true, + 485 + ] + ], + [ + [ + false, + 485 + ] + ], + [ + [ + true, + 193 + ], + [ + false, + 201 + ], + [ + false, + 486 + ] + ], + [ + [ + true, + 201 + ], + [ + false, + 193 + ], + [ + false, + 486 + ] + ], + [ + [ + true, + 486 + ], + [ + false, + 193 + ], + [ + false, + 201 + ] + ], + [ + [ + true, + 193 + ], + [ + true, + 201 + ], + [ + true, + 486 + ] + ], + [ + [ + false, + 486 + ] + ], + [ + [ + true, + 195 + ], + [ + false, + 203 + ], + [ + false, + 487 + ] + ], + [ + [ + true, + 203 + ], + [ + false, + 195 + ], + [ + false, + 487 + ] + ], + [ + [ + true, + 487 + ], + [ + false, + 195 + ], + [ + false, + 203 + ] + ], + [ + [ + true, + 195 + ], + [ + true, + 203 + ], + [ + true, + 487 + ] + ], + [ + [ + false, + 487 + ] + ], + [ + [ + true, + 197 + ], + [ + false, + 205 + ], + [ + false, + 488 + ] + ], + [ + [ + true, + 205 + ], + [ + false, + 197 + ], + [ + false, + 488 + ] + ], + [ + [ + true, + 488 + ], + [ + false, + 197 + ], + [ + false, + 205 + ] + ], + [ + [ + true, + 197 + ], + [ + true, + 205 + ], + [ + true, + 488 + ] + ], + [ + [ + false, + 488 + ] + ], + [ + [ + true, + 198 + ], + [ + false, + 206 + ], + [ + false, + 489 + ] + ], + [ + [ + true, + 206 + ], + [ + false, + 198 + ], + [ + false, + 489 + ] + ], + [ + [ + true, + 489 + ], + [ + false, + 198 + ], + [ + false, + 206 + ] + ], + [ + [ + true, + 198 + ], + [ + true, + 206 + ], + [ + true, + 489 + ] + ], + [ + [ + false, + 489 + ] + ], + [ + [ + false, + 201 + ], + [ + false, + 209 + ], + [ + false, + 490 + ] + ], + [ + [ + true, + 201 + ], + [ + true, + 209 + ], + [ + false, + 490 + ] + ], + [ + [ + true, + 201 + ], + [ + false, + 209 + ], + [ + true, + 490 + ] + ], + [ + [ + false, + 201 + ], + [ + true, + 209 + ], + [ + true, + 490 + ] + ], + [ + [ + false, + 490 + ] + ], + [ + [ + false, + 200 + ], + [ + false, + 208 + ], + [ + false, + 491 + ] + ], + [ + [ + true, + 200 + ], + [ + true, + 208 + ], + [ + false, + 491 + ] + ], + [ + [ + true, + 200 + ], + [ + false, + 208 + ], + [ + true, + 491 + ] + ], + [ + [ + false, + 200 + ], + [ + true, + 208 + ], + [ + true, + 491 + ] + ], + [ + [ + false, + 491 + ] + ], + [ + [ + false, + 205 + ], + [ + false, + 213 + ], + [ + false, + 492 + ] + ], + [ + [ + true, + 205 + ], + [ + true, + 213 + ], + [ + false, + 492 + ] + ], + [ + [ + true, + 205 + ], + [ + false, + 213 + ], + [ + true, + 492 + ] + ], + [ + [ + true, + 213 + ], + [ + false, + 205 + ], + [ + true, + 492 + ] + ], + [ + [ + false, + 492 + ] + ], + [ + [ + false, + 207 + ], + [ + false, + 215 + ], + [ + false, + 493 + ] + ], + [ + [ + true, + 207 + ], + [ + true, + 215 + ], + [ + false, + 493 + ] + ], + [ + [ + true, + 207 + ], + [ + false, + 215 + ], + [ + true, + 493 + ] + ], + [ + [ + true, + 215 + ], + [ + false, + 207 + ], + [ + true, + 493 + ] + ], + [ + [ + false, + 493 + ] + ], + [ + [ + true, + 203 + ], + [ + false, + 211 + ], + [ + false, + 494 + ] + ], + [ + [ + true, + 211 + ], + [ + false, + 203 + ], + [ + false, + 494 + ] + ], + [ + [ + true, + 494 + ], + [ + false, + 203 + ], + [ + false, + 211 + ] + ], + [ + [ + true, + 203 + ], + [ + true, + 211 + ], + [ + true, + 494 + ] + ], + [ + [ + false, + 494 + ] + ], + [ + [ + true, + 204 + ], + [ + false, + 212 + ], + [ + false, + 495 + ] + ], + [ + [ + true, + 212 + ], + [ + false, + 204 + ], + [ + false, + 495 + ] + ], + [ + [ + true, + 495 + ], + [ + false, + 204 + ], + [ + false, + 212 + ] + ], + [ + [ + true, + 204 + ], + [ + true, + 212 + ], + [ + true, + 495 + ] + ], + [ + [ + false, + 495 + ] + ], + [ + [ + true, + 206 + ], + [ + false, + 214 + ], + [ + false, + 496 + ] + ], + [ + [ + true, + 214 + ], + [ + false, + 206 + ], + [ + false, + 496 + ] + ], + [ + [ + true, + 496 + ], + [ + false, + 206 + ], + [ + false, + 214 + ] + ], + [ + [ + true, + 206 + ], + [ + true, + 214 + ], + [ + true, + 496 + ] + ], + [ + [ + false, + 496 + ] + ], + [ + [ + false, + 212 + ], + [ + false, + 220 + ], + [ + false, + 497 + ] + ], + [ + [ + true, + 212 + ], + [ + true, + 220 + ], + [ + false, + 497 + ] + ], + [ + [ + true, + 212 + ], + [ + false, + 220 + ], + [ + true, + 497 + ] + ], + [ + [ + true, + 220 + ], + [ + false, + 212 + ], + [ + true, + 497 + ] + ], + [ + [ + false, + 497 + ] + ], + [ + [ + false, + 213 + ], + [ + false, + 221 + ], + [ + false, + 498 + ] + ], + [ + [ + true, + 213 + ], + [ + true, + 221 + ], + [ + false, + 498 + ] + ], + [ + [ + true, + 213 + ], + [ + false, + 221 + ], + [ + true, + 498 + ] + ], + [ + [ + true, + 221 + ], + [ + false, + 213 + ], + [ + true, + 498 + ] + ], + [ + [ + false, + 498 + ] + ], + [ + [ + false, + 214 + ], + [ + false, + 222 + ], + [ + false, + 499 + ] + ], + [ + [ + true, + 214 + ], + [ + true, + 222 + ], + [ + false, + 499 + ] + ], + [ + [ + true, + 214 + ], + [ + false, + 222 + ], + [ + true, + 499 + ] + ], + [ + [ + true, + 222 + ], + [ + false, + 214 + ], + [ + true, + 499 + ] + ], + [ + [ + false, + 499 + ] + ], + [ + [ + false, + 215 + ], + [ + false, + 223 + ], + [ + false, + 500 + ] + ], + [ + [ + true, + 215 + ], + [ + true, + 223 + ], + [ + false, + 500 + ] + ], + [ + [ + true, + 215 + ], + [ + false, + 223 + ], + [ + true, + 500 + ] + ], + [ + [ + true, + 223 + ], + [ + false, + 215 + ], + [ + true, + 500 + ] + ], + [ + [ + false, + 500 + ] + ], + [ + [ + true, + 208 + ], + [ + false, + 216 + ], + [ + false, + 501 + ] + ], + [ + [ + true, + 216 + ], + [ + false, + 208 + ], + [ + false, + 501 + ] + ], + [ + [ + true, + 501 + ], + [ + false, + 208 + ], + [ + false, + 216 + ] + ], + [ + [ + true, + 208 + ], + [ + true, + 216 + ], + [ + true, + 501 + ] + ], + [ + [ + false, + 501 + ] + ], + [ + [ + true, + 209 + ], + [ + false, + 217 + ], + [ + false, + 502 + ] + ], + [ + [ + true, + 217 + ], + [ + false, + 209 + ], + [ + false, + 502 + ] + ], + [ + [ + true, + 502 + ], + [ + false, + 209 + ], + [ + false, + 217 + ] + ], + [ + [ + true, + 209 + ], + [ + true, + 217 + ], + [ + true, + 502 + ] + ], + [ + [ + false, + 502 + ] + ], + [ + [ + true, + 211 + ], + [ + false, + 219 + ], + [ + false, + 503 + ] + ], + [ + [ + true, + 219 + ], + [ + false, + 211 + ], + [ + false, + 503 + ] + ], + [ + [ + true, + 503 + ], + [ + false, + 211 + ], + [ + false, + 219 + ] + ], + [ + [ + true, + 211 + ], + [ + true, + 219 + ], + [ + true, + 503 + ] + ], + [ + [ + false, + 503 + ] + ], + [ + [ + false, + 221 + ], + [ + false, + 229 + ], + [ + false, + 504 + ] + ], + [ + [ + true, + 221 + ], + [ + true, + 229 + ], + [ + false, + 504 + ] + ], + [ + [ + true, + 221 + ], + [ + false, + 229 + ], + [ + true, + 504 + ] + ], + [ + [ + true, + 229 + ], + [ + false, + 221 + ], + [ + true, + 504 + ] + ], + [ + [ + false, + 504 + ] + ], + [ + [ + false, + 223 + ], + [ + false, + 231 + ], + [ + false, + 505 + ] + ], + [ + [ + true, + 223 + ], + [ + true, + 231 + ], + [ + false, + 505 + ] + ], + [ + [ + true, + 223 + ], + [ + false, + 231 + ], + [ + true, + 505 + ] + ], + [ + [ + true, + 231 + ], + [ + false, + 223 + ], + [ + true, + 505 + ] + ], + [ + [ + false, + 505 + ] + ], + [ + [ + true, + 216 + ], + [ + false, + 224 + ], + [ + false, + 506 + ] + ], + [ + [ + true, + 224 + ], + [ + false, + 216 + ], + [ + false, + 506 + ] + ], + [ + [ + true, + 506 + ], + [ + false, + 216 + ], + [ + false, + 224 + ] + ], + [ + [ + true, + 216 + ], + [ + true, + 224 + ], + [ + true, + 506 + ] + ], + [ + [ + false, + 506 + ] + ], + [ + [ + true, + 217 + ], + [ + false, + 225 + ], + [ + false, + 507 + ] + ], + [ + [ + true, + 225 + ], + [ + false, + 217 + ], + [ + false, + 507 + ] + ], + [ + [ + true, + 507 + ], + [ + false, + 217 + ], + [ + false, + 225 + ] + ], + [ + [ + true, + 217 + ], + [ + true, + 225 + ], + [ + true, + 507 + ] + ], + [ + [ + false, + 507 + ] + ], + [ + [ + false, + 226 + ], + [ + true, + 218 + ], + [ + false, + 508 + ] + ], + [ + [ + true, + 226 + ], + [ + false, + 218 + ], + [ + false, + 508 + ] + ], + [ + [ + true, + 508 + ], + [ + false, + 218 + ], + [ + false, + 226 + ] + ], + [ + [ + true, + 218 + ], + [ + true, + 226 + ], + [ + true, + 508 + ] + ], + [ + [ + false, + 508 + ] + ], + [ + [ + true, + 220 + ], + [ + false, + 228 + ], + [ + false, + 509 + ] + ], + [ + [ + true, + 228 + ], + [ + false, + 220 + ], + [ + false, + 509 + ] + ], + [ + [ + true, + 509 + ], + [ + false, + 220 + ], + [ + false, + 228 + ] + ], + [ + [ + true, + 220 + ], + [ + true, + 228 + ], + [ + true, + 509 + ] + ], + [ + [ + false, + 509 + ] + ], + [ + [ + true, + 222 + ], + [ + false, + 230 + ], + [ + false, + 510 + ] + ], + [ + [ + true, + 230 + ], + [ + false, + 222 + ], + [ + false, + 510 + ] + ], + [ + [ + true, + 510 + ], + [ + false, + 222 + ], + [ + false, + 230 + ] + ], + [ + [ + true, + 222 + ], + [ + true, + 230 + ], + [ + true, + 510 + ] + ], + [ + [ + false, + 510 + ] + ], + [ + [ + false, + 226 + ], + [ + false, + 234 + ], + [ + false, + 511 + ] + ], + [ + [ + true, + 226 + ], + [ + true, + 234 + ], + [ + false, + 511 + ] + ], + [ + [ + true, + 226 + ], + [ + false, + 234 + ], + [ + true, + 511 + ] + ], + [ + [ + false, + 226 + ], + [ + true, + 234 + ], + [ + true, + 511 + ] + ], + [ + [ + false, + 511 + ] + ], + [ + [ + false, + 228 + ], + [ + false, + 236 + ], + [ + false, + 512 + ] + ], + [ + [ + true, + 228 + ], + [ + true, + 236 + ], + [ + false, + 512 + ] + ], + [ + [ + true, + 228 + ], + [ + false, + 236 + ], + [ + true, + 512 + ] + ], + [ + [ + false, + 228 + ], + [ + true, + 236 + ], + [ + true, + 512 + ] + ], + [ + [ + false, + 512 + ] + ], + [ + [ + false, + 224 + ], + [ + false, + 232 + ], + [ + false, + 513 + ] + ], + [ + [ + true, + 224 + ], + [ + true, + 232 + ], + [ + false, + 513 + ] + ], + [ + [ + true, + 224 + ], + [ + false, + 232 + ], + [ + true, + 513 + ] + ], + [ + [ + false, + 224 + ], + [ + true, + 232 + ], + [ + true, + 513 + ] + ], + [ + [ + false, + 513 + ] + ], + [ + [ + false, + 229 + ], + [ + false, + 237 + ], + [ + false, + 514 + ] + ], + [ + [ + true, + 229 + ], + [ + true, + 237 + ], + [ + false, + 514 + ] + ], + [ + [ + true, + 229 + ], + [ + false, + 237 + ], + [ + true, + 514 + ] + ], + [ + [ + true, + 237 + ], + [ + false, + 229 + ], + [ + true, + 514 + ] + ], + [ + [ + false, + 514 + ] + ], + [ + [ + false, + 231 + ], + [ + false, + 239 + ], + [ + false, + 515 + ] + ], + [ + [ + true, + 231 + ], + [ + true, + 239 + ], + [ + false, + 515 + ] + ], + [ + [ + true, + 231 + ], + [ + false, + 239 + ], + [ + true, + 515 + ] + ], + [ + [ + true, + 239 + ], + [ + false, + 231 + ], + [ + true, + 515 + ] + ], + [ + [ + false, + 515 + ] + ], + [ + [ + true, + 225 + ], + [ + false, + 233 + ], + [ + false, + 516 + ] + ], + [ + [ + true, + 233 + ], + [ + false, + 225 + ], + [ + false, + 516 + ] + ], + [ + [ + true, + 516 + ], + [ + false, + 225 + ], + [ + false, + 233 + ] + ], + [ + [ + true, + 225 + ], + [ + true, + 233 + ], + [ + true, + 516 + ] + ], + [ + [ + false, + 516 + ] + ], + [ + [ + true, + 230 + ], + [ + false, + 238 + ], + [ + false, + 517 + ] + ], + [ + [ + true, + 238 + ], + [ + false, + 230 + ], + [ + false, + 517 + ] + ], + [ + [ + true, + 517 + ], + [ + false, + 230 + ], + [ + false, + 238 + ] + ], + [ + [ + true, + 230 + ], + [ + true, + 238 + ], + [ + true, + 517 + ] + ], + [ + [ + false, + 517 + ] + ], + [ + [ + false, + 235 + ], + [ + false, + 243 + ], + [ + false, + 518 + ] + ], + [ + [ + true, + 235 + ], + [ + true, + 243 + ], + [ + false, + 518 + ] + ], + [ + [ + true, + 235 + ], + [ + false, + 243 + ], + [ + true, + 518 + ] + ], + [ + [ + true, + 243 + ], + [ + false, + 235 + ], + [ + true, + 518 + ] + ], + [ + [ + false, + 518 + ] + ], + [ + [ + false, + 236 + ], + [ + false, + 244 + ], + [ + false, + 519 + ] + ], + [ + [ + true, + 236 + ], + [ + true, + 244 + ], + [ + false, + 519 + ] + ], + [ + [ + true, + 236 + ], + [ + false, + 244 + ], + [ + true, + 519 + ] + ], + [ + [ + true, + 244 + ], + [ + false, + 236 + ], + [ + true, + 519 + ] + ], + [ + [ + false, + 519 + ] + ], + [ + [ + false, + 237 + ], + [ + false, + 245 + ], + [ + false, + 520 + ] + ], + [ + [ + true, + 237 + ], + [ + true, + 245 + ], + [ + false, + 520 + ] + ], + [ + [ + true, + 237 + ], + [ + false, + 245 + ], + [ + true, + 520 + ] + ], + [ + [ + true, + 245 + ], + [ + false, + 237 + ], + [ + true, + 520 + ] + ], + [ + [ + false, + 520 + ] + ], + [ + [ + false, + 239 + ], + [ + false, + 247 + ], + [ + false, + 521 + ] + ], + [ + [ + true, + 239 + ], + [ + true, + 247 + ], + [ + false, + 521 + ] + ], + [ + [ + true, + 239 + ], + [ + false, + 247 + ], + [ + true, + 521 + ] + ], + [ + [ + true, + 247 + ], + [ + false, + 239 + ], + [ + true, + 521 + ] + ], + [ + [ + false, + 521 + ] + ], + [ + [ + true, + 232 + ], + [ + false, + 240 + ], + [ + false, + 522 + ] + ], + [ + [ + true, + 240 + ], + [ + false, + 232 + ], + [ + false, + 522 + ] + ], + [ + [ + true, + 522 + ], + [ + false, + 232 + ], + [ + false, + 240 + ] + ], + [ + [ + true, + 232 + ], + [ + true, + 240 + ], + [ + true, + 522 + ] + ], + [ + [ + false, + 522 + ] + ], + [ + [ + false, + 241 + ], + [ + true, + 233 + ], + [ + false, + 523 + ] + ], + [ + [ + true, + 241 + ], + [ + false, + 233 + ], + [ + false, + 523 + ] + ], + [ + [ + true, + 523 + ], + [ + false, + 233 + ], + [ + false, + 241 + ] + ], + [ + [ + true, + 233 + ], + [ + true, + 241 + ], + [ + true, + 523 + ] + ], + [ + [ + false, + 523 + ] + ], + [ + [ + true, + 238 + ], + [ + false, + 246 + ], + [ + false, + 524 + ] + ], + [ + [ + true, + 246 + ], + [ + false, + 238 + ], + [ + false, + 524 + ] + ], + [ + [ + true, + 524 + ], + [ + false, + 238 + ], + [ + false, + 246 + ] + ], + [ + [ + true, + 238 + ], + [ + true, + 246 + ], + [ + true, + 524 + ] + ], + [ + [ + false, + 524 + ] + ], + [ + [ + false, + 243 + ], + [ + false, + 251 + ], + [ + false, + 525 + ] + ], + [ + [ + true, + 243 + ], + [ + true, + 251 + ], + [ + false, + 525 + ] + ], + [ + [ + true, + 243 + ], + [ + false, + 251 + ], + [ + true, + 525 + ] + ], + [ + [ + true, + 251 + ], + [ + false, + 243 + ], + [ + true, + 525 + ] + ], + [ + [ + false, + 525 + ] + ], + [ + [ + false, + 244 + ], + [ + false, + 252 + ], + [ + false, + 526 + ] + ], + [ + [ + true, + 244 + ], + [ + true, + 252 + ], + [ + false, + 526 + ] + ], + [ + [ + true, + 244 + ], + [ + false, + 252 + ], + [ + true, + 526 + ] + ], + [ + [ + true, + 252 + ], + [ + false, + 244 + ], + [ + true, + 526 + ] + ], + [ + [ + false, + 526 + ] + ], + [ + [ + false, + 245 + ], + [ + false, + 253 + ], + [ + false, + 527 + ] + ], + [ + [ + true, + 245 + ], + [ + true, + 253 + ], + [ + false, + 527 + ] + ], + [ + [ + true, + 245 + ], + [ + false, + 253 + ], + [ + true, + 527 + ] + ], + [ + [ + true, + 253 + ], + [ + false, + 245 + ], + [ + true, + 527 + ] + ], + [ + [ + false, + 527 + ] + ], + [ + [ + false, + 247 + ], + [ + false, + 255 + ], + [ + false, + 528 + ] + ], + [ + [ + true, + 247 + ], + [ + true, + 255 + ], + [ + false, + 528 + ] + ], + [ + [ + true, + 247 + ], + [ + false, + 255 + ], + [ + true, + 528 + ] + ], + [ + [ + true, + 255 + ], + [ + false, + 247 + ], + [ + true, + 528 + ] + ], + [ + [ + false, + 528 + ] + ], + [ + [ + true, + 240 + ], + [ + false, + 248 + ], + [ + false, + 529 + ] + ], + [ + [ + true, + 248 + ], + [ + false, + 240 + ], + [ + false, + 529 + ] + ], + [ + [ + true, + 529 + ], + [ + false, + 240 + ], + [ + false, + 248 + ] + ], + [ + [ + true, + 240 + ], + [ + true, + 248 + ], + [ + true, + 529 + ] + ], + [ + [ + false, + 529 + ] + ], + [ + [ + true, + 242 + ], + [ + false, + 250 + ], + [ + false, + 530 + ] + ], + [ + [ + true, + 250 + ], + [ + false, + 242 + ], + [ + false, + 530 + ] + ], + [ + [ + true, + 530 + ], + [ + false, + 242 + ], + [ + false, + 250 + ] + ], + [ + [ + true, + 242 + ], + [ + true, + 250 + ], + [ + true, + 530 + ] + ], + [ + [ + false, + 530 + ] + ], + [ + [ + true, + 246 + ], + [ + false, + 254 + ], + [ + false, + 531 + ] + ], + [ + [ + true, + 254 + ], + [ + false, + 246 + ], + [ + false, + 531 + ] + ], + [ + [ + true, + 531 + ], + [ + false, + 246 + ], + [ + false, + 254 + ] + ], + [ + [ + true, + 246 + ], + [ + true, + 254 + ], + [ + true, + 531 + ] + ], + [ + [ + false, + 531 + ] + ], + [ + [ + false, + 248 + ], + [ + false, + 256 + ], + [ + false, + 532 + ] + ], + [ + [ + true, + 248 + ], + [ + true, + 256 + ], + [ + false, + 532 + ] + ], + [ + [ + true, + 248 + ], + [ + false, + 256 + ], + [ + true, + 532 + ] + ], + [ + [ + false, + 248 + ], + [ + true, + 256 + ], + [ + true, + 532 + ] + ], + [ + [ + false, + 532 + ] + ], + [ + [ + false, + 253 + ], + [ + false, + 261 + ], + [ + false, + 533 + ] + ], + [ + [ + true, + 253 + ], + [ + true, + 261 + ], + [ + false, + 533 + ] + ], + [ + [ + true, + 253 + ], + [ + false, + 261 + ], + [ + true, + 533 + ] + ], + [ + [ + true, + 261 + ], + [ + false, + 253 + ], + [ + true, + 533 + ] + ], + [ + [ + false, + 533 + ] + ], + [ + [ + false, + 254 + ], + [ + false, + 262 + ], + [ + false, + 534 + ] + ], + [ + [ + true, + 254 + ], + [ + true, + 262 + ], + [ + false, + 534 + ] + ], + [ + [ + true, + 254 + ], + [ + false, + 262 + ], + [ + true, + 534 + ] + ], + [ + [ + true, + 262 + ], + [ + false, + 254 + ], + [ + true, + 534 + ] + ], + [ + [ + false, + 534 + ] + ], + [ + [ + false, + 255 + ], + [ + false, + 263 + ], + [ + false, + 535 + ] + ], + [ + [ + true, + 255 + ], + [ + true, + 263 + ], + [ + false, + 535 + ] + ], + [ + [ + true, + 255 + ], + [ + false, + 263 + ], + [ + true, + 535 + ] + ], + [ + [ + true, + 263 + ], + [ + false, + 255 + ], + [ + true, + 535 + ] + ], + [ + [ + false, + 535 + ] + ], + [ + [ + true, + 250 + ], + [ + false, + 258 + ], + [ + false, + 536 + ] + ], + [ + [ + true, + 258 + ], + [ + false, + 250 + ], + [ + false, + 536 + ] + ], + [ + [ + true, + 536 + ], + [ + false, + 250 + ], + [ + false, + 258 + ] + ], + [ + [ + true, + 250 + ], + [ + true, + 258 + ], + [ + true, + 536 + ] + ], + [ + [ + false, + 536 + ] + ], + [ + [ + true, + 251 + ], + [ + false, + 259 + ], + [ + false, + 537 + ] + ], + [ + [ + true, + 259 + ], + [ + false, + 251 + ], + [ + false, + 537 + ] + ], + [ + [ + true, + 537 + ], + [ + false, + 251 + ], + [ + false, + 259 + ] + ], + [ + [ + true, + 251 + ], + [ + true, + 259 + ], + [ + true, + 537 + ] + ], + [ + [ + false, + 537 + ] + ], + [ + [ + true, + 252 + ], + [ + false, + 260 + ], + [ + false, + 538 + ] + ], + [ + [ + true, + 260 + ], + [ + false, + 252 + ], + [ + false, + 538 + ] + ], + [ + [ + true, + 538 + ], + [ + false, + 252 + ], + [ + false, + 260 + ] + ], + [ + [ + true, + 252 + ], + [ + true, + 260 + ], + [ + true, + 538 + ] + ], + [ + [ + false, + 538 + ] + ], + [ + [ + false, + 259 + ], + [ + false, + 267 + ], + [ + false, + 539 + ] + ], + [ + [ + true, + 259 + ], + [ + true, + 267 + ], + [ + false, + 539 + ] + ], + [ + [ + true, + 259 + ], + [ + false, + 267 + ], + [ + true, + 539 + ] + ], + [ + [ + true, + 267 + ], + [ + false, + 259 + ], + [ + true, + 539 + ] + ], + [ + [ + false, + 539 + ] + ], + [ + [ + false, + 260 + ], + [ + false, + 268 + ], + [ + false, + 540 + ] + ], + [ + [ + true, + 260 + ], + [ + true, + 268 + ], + [ + false, + 540 + ] + ], + [ + [ + true, + 260 + ], + [ + false, + 268 + ], + [ + true, + 540 + ] + ], + [ + [ + true, + 268 + ], + [ + false, + 260 + ], + [ + true, + 540 + ] + ], + [ + [ + false, + 540 + ] + ], + [ + [ + false, + 261 + ], + [ + false, + 269 + ], + [ + false, + 541 + ] + ], + [ + [ + true, + 261 + ], + [ + true, + 269 + ], + [ + false, + 541 + ] + ], + [ + [ + true, + 261 + ], + [ + false, + 269 + ], + [ + true, + 541 + ] + ], + [ + [ + true, + 269 + ], + [ + false, + 261 + ], + [ + true, + 541 + ] + ], + [ + [ + false, + 541 + ] + ], + [ + [ + false, + 262 + ], + [ + false, + 270 + ], + [ + false, + 542 + ] + ], + [ + [ + true, + 262 + ], + [ + true, + 270 + ], + [ + false, + 542 + ] + ], + [ + [ + true, + 262 + ], + [ + false, + 270 + ], + [ + true, + 542 + ] + ], + [ + [ + true, + 270 + ], + [ + false, + 262 + ], + [ + true, + 542 + ] + ], + [ + [ + false, + 542 + ] + ], + [ + [ + false, + 263 + ], + [ + false, + 271 + ], + [ + false, + 543 + ] + ], + [ + [ + true, + 263 + ], + [ + true, + 271 + ], + [ + false, + 543 + ] + ], + [ + [ + true, + 263 + ], + [ + false, + 271 + ], + [ + true, + 543 + ] + ], + [ + [ + true, + 271 + ], + [ + false, + 263 + ], + [ + true, + 543 + ] + ], + [ + [ + false, + 543 + ] + ], + [ + [ + false, + 264 + ], + [ + true, + 256 + ], + [ + false, + 544 + ] + ], + [ + [ + true, + 264 + ], + [ + false, + 256 + ], + [ + false, + 544 + ] + ], + [ + [ + true, + 544 + ], + [ + false, + 256 + ], + [ + false, + 264 + ] + ], + [ + [ + true, + 256 + ], + [ + true, + 264 + ], + [ + true, + 544 + ] + ], + [ + [ + false, + 544 + ] + ], + [ + [ + true, + 258 + ], + [ + false, + 266 + ], + [ + false, + 545 + ] + ], + [ + [ + true, + 266 + ], + [ + false, + 258 + ], + [ + false, + 545 + ] + ], + [ + [ + true, + 545 + ], + [ + false, + 258 + ], + [ + false, + 266 + ] + ], + [ + [ + true, + 258 + ], + [ + true, + 266 + ], + [ + true, + 545 + ] + ], + [ + [ + false, + 545 + ] + ], + [ + [ + false, + 265 + ], + [ + false, + 273 + ], + [ + false, + 546 + ] + ], + [ + [ + true, + 265 + ], + [ + true, + 273 + ], + [ + false, + 546 + ] + ], + [ + [ + true, + 265 + ], + [ + false, + 273 + ], + [ + true, + 546 + ] + ], + [ + [ + false, + 265 + ], + [ + true, + 273 + ], + [ + true, + 546 + ] + ], + [ + [ + false, + 546 + ] + ], + [ + [ + false, + 266 + ], + [ + false, + 274 + ], + [ + false, + 547 + ] + ], + [ + [ + true, + 266 + ], + [ + true, + 274 + ], + [ + false, + 547 + ] + ], + [ + [ + true, + 266 + ], + [ + false, + 274 + ], + [ + true, + 547 + ] + ], + [ + [ + true, + 274 + ], + [ + false, + 266 + ], + [ + true, + 547 + ] + ], + [ + [ + false, + 547 + ] + ], + [ + [ + false, + 267 + ], + [ + false, + 275 + ], + [ + false, + 548 + ] + ], + [ + [ + true, + 267 + ], + [ + true, + 275 + ], + [ + false, + 548 + ] + ], + [ + [ + true, + 267 + ], + [ + false, + 275 + ], + [ + true, + 548 + ] + ], + [ + [ + true, + 275 + ], + [ + false, + 267 + ], + [ + true, + 548 + ] + ], + [ + [ + false, + 548 + ] + ], + [ + [ + false, + 269 + ], + [ + false, + 277 + ], + [ + false, + 549 + ] + ], + [ + [ + true, + 269 + ], + [ + true, + 277 + ], + [ + false, + 549 + ] + ], + [ + [ + true, + 269 + ], + [ + false, + 277 + ], + [ + true, + 549 + ] + ], + [ + [ + true, + 277 + ], + [ + false, + 269 + ], + [ + true, + 549 + ] + ], + [ + [ + false, + 549 + ] + ], + [ + [ + false, + 270 + ], + [ + false, + 278 + ], + [ + false, + 550 + ] + ], + [ + [ + true, + 270 + ], + [ + true, + 278 + ], + [ + false, + 550 + ] + ], + [ + [ + true, + 270 + ], + [ + false, + 278 + ], + [ + true, + 550 + ] + ], + [ + [ + true, + 278 + ], + [ + false, + 270 + ], + [ + true, + 550 + ] + ], + [ + [ + false, + 550 + ] + ], + [ + [ + false, + 271 + ], + [ + false, + 279 + ], + [ + false, + 551 + ] + ], + [ + [ + true, + 271 + ], + [ + true, + 279 + ], + [ + false, + 551 + ] + ], + [ + [ + true, + 271 + ], + [ + false, + 279 + ], + [ + true, + 551 + ] + ], + [ + [ + true, + 279 + ], + [ + false, + 271 + ], + [ + true, + 551 + ] + ], + [ + [ + false, + 551 + ] + ], + [ + [ + true, + 268 + ], + [ + false, + 276 + ], + [ + false, + 552 + ] + ], + [ + [ + true, + 276 + ], + [ + false, + 268 + ], + [ + false, + 552 + ] + ], + [ + [ + true, + 552 + ], + [ + false, + 268 + ], + [ + false, + 276 + ] + ], + [ + [ + true, + 268 + ], + [ + true, + 276 + ], + [ + true, + 552 + ] + ], + [ + [ + false, + 552 + ] + ], + [ + [ + true, + 273 + ], + [ + false, + 1 + ], + [ + false, + 553 + ] + ], + [ + [ + true, + 1 + ], + [ + false, + 273 + ], + [ + false, + 553 + ] + ], + [ + [ + false, + 1 + ], + [ + false, + 273 + ], + [ + true, + 553 + ] + ], + [ + [ + true, + 1 + ], + [ + true, + 273 + ], + [ + true, + 553 + ] + ], + [ + [ + false, + 553 + ] + ], + [ + [ + false, + 2 + ], + [ + true, + 274 + ], + [ + false, + 554 + ] + ], + [ + [ + true, + 2 + ], + [ + false, + 274 + ], + [ + false, + 554 + ] + ], + [ + [ + false, + 2 + ], + [ + false, + 274 + ], + [ + true, + 554 + ] + ], + [ + [ + true, + 2 + ], + [ + true, + 274 + ], + [ + true, + 554 + ] + ], + [ + [ + false, + 554 + ] + ], + [ + [ + false, + 275 + ], + [ + false, + 3 + ], + [ + false, + 555 + ] + ], + [ + [ + true, + 3 + ], + [ + true, + 275 + ], + [ + false, + 555 + ] + ], + [ + [ + true, + 275 + ], + [ + false, + 3 + ], + [ + true, + 555 + ] + ], + [ + [ + true, + 3 + ], + [ + false, + 275 + ], + [ + true, + 555 + ] + ], + [ + [ + false, + 555 + ] + ], + [ + [ + false, + 276 + ], + [ + false, + 4 + ], + [ + false, + 556 + ] + ], + [ + [ + true, + 4 + ], + [ + true, + 276 + ], + [ + false, + 556 + ] + ], + [ + [ + true, + 276 + ], + [ + false, + 4 + ], + [ + true, + 556 + ] + ], + [ + [ + true, + 4 + ], + [ + false, + 276 + ], + [ + true, + 556 + ] + ], + [ + [ + false, + 556 + ] + ], + [ + [ + false, + 5 + ], + [ + false, + 277 + ], + [ + false, + 557 + ] + ], + [ + [ + true, + 5 + ], + [ + true, + 277 + ], + [ + false, + 557 + ] + ], + [ + [ + false, + 5 + ], + [ + true, + 277 + ], + [ + true, + 557 + ] + ], + [ + [ + true, + 5 + ], + [ + false, + 277 + ], + [ + true, + 557 + ] + ], + [ + [ + false, + 557 + ] + ], + [ + [ + false, + 6 + ], + [ + false, + 278 + ], + [ + false, + 558 + ] + ], + [ + [ + true, + 6 + ], + [ + true, + 278 + ], + [ + false, + 558 + ] + ], + [ + [ + false, + 6 + ], + [ + true, + 278 + ], + [ + true, + 558 + ] + ], + [ + [ + true, + 6 + ], + [ + false, + 278 + ], + [ + true, + 558 + ] + ], + [ + [ + false, + 558 + ] + ], + [ + [ + false, + 7 + ], + [ + false, + 279 + ], + [ + false, + 559 + ] + ], + [ + [ + true, + 7 + ], + [ + true, + 279 + ], + [ + false, + 559 + ] + ], + [ + [ + false, + 7 + ], + [ + true, + 279 + ], + [ + true, + 559 + ] + ], + [ + [ + true, + 7 + ], + [ + false, + 279 + ], + [ + true, + 559 + ] + ], + [ + [ + false, + 559 + ] + ] + ] +} diff --git a/jujure/static/q-solved/flag.png b/jujure/static/q-solved/flag.png new file mode 100755 index 0000000000000000000000000000000000000000..f7bbc21e5ee21cfa3a9e440788147c24c96e4d2c GIT binary patch literal 16664 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 To%G)fE@(c~Q>#&V8utGHB^cb# literal 0 HcmV?d00001 diff --git a/jujure/static/q-solved/flag.py b/jujure/static/q-solved/flag.py new file mode 100755 index 0000000..df54409 --- /dev/null +++ b/jujure/static/q-solved/flag.py @@ -0,0 +1,33 @@ +#!/usr/bin/env python3 +import json +from z3 import * + +with open('circuit.json', 'r') as f: + j = json.load(f) + +nq = j['memory'] + +system = [Bool(str(i)) for i in range(nq)] + +s = Solver() + +for cs in j['circuit']: + term = Or() + for c in cs: + term = Or(term, system[c[1]] == c[0]) + s.add(term) + +print(s) +print(s.check()) + +m = s.model() + +result_arr = [''] * nq + +for d in m.decls(): + result_arr[int(d.name())] = '1' if m[d] else '0' + +result_arr.reverse() +result = "".join(result_arr) + +print(int.to_bytes(int(result, 2), nq//8, 'little')) diff --git a/jujure/static/q-solved/poc_flag.png b/jujure/static/q-solved/poc_flag.png new file mode 100755 index 0000000000000000000000000000000000000000..15146b87e475e9f1a8635ed4caea8f4f78e04fc9 GIT binary patch literal 12271 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 literal 0 HcmV?d00001 diff --git a/jujure/static/q-solved/poc_flag.py b/jujure/static/q-solved/poc_flag.py new file mode 100755 index 0000000..eb032ca --- /dev/null +++ b/jujure/static/q-solved/poc_flag.py @@ -0,0 +1,19 @@ +#!/usr/bin/env python3 +import json + +with open('circuit.json', 'r') as f: + j = json.load(f) + +nq = j['memory'] + +system = ['0'] * nq + +for cs in j['circuit']: + if len(cs) == 1: + system[cs[0][1]] = '1' if cs[0][0] else '0' + + +system.reverse() +result = "".join(system) + +print(int.to_bytes(int(result, 2), nq//8, 'little')) diff --git a/jujure/static/q-solved/solve.py b/jujure/static/q-solved/solve.py new file mode 100755 index 0000000..1f2339b --- /dev/null +++ b/jujure/static/q-solved/solve.py @@ -0,0 +1,56 @@ +import gmpy2 +from qiskit import QuantumCircuit, execute, Aer +from qiskit.circuit.library import XGate +import json + +with open("circuit.json", "r") as f: + circ = json.load(f) + +nq = circ['memory'] +na = circ['ancilla'] +target = nq + na + +print("[+] Constructing circuit...") +main = QuantumCircuit(nq + na + 1, nq) +sub = QuantumCircuit(nq + na + 1) + +main.x(target) +main.h(target) +for i in range(circ['memory']): + main.h(i) + +t = circ['memory'] +for cs in circ['circuit']: + ctrl = ''.join(['0' if x else '1' for (x, _) in cs]) + l = [c for (_, c) in cs] + sub.append(XGate().control(len(cs), ctrl_state=ctrl), l + [t]) + t += 1 + +sub.append(XGate().control(na, ctrl_state='0'*na), + [i for i in range(nq, nq + na)] + [target]) + +for cs in circ['circuit'][::-1]: + t -= 1 + ctrl = ''.join(['0' if x else '1' for (x, _) in cs]) + l = [c for (_, c) in cs] + sub.append(XGate().control(len(cs), ctrl_state=ctrl), l + [t]) + +sub.h([i for i in range(nq)]) +sub.append(XGate().control(nq, ctrl_state='0'*nq), + [i for i in range(nq)] + [target]) +sub.h([i for i in range(nq)]) + +for i in range(round(0.785 * int(gmpy2.isqrt(2**nq)) - 0.5)): + main.append(sub, [i for i in range(na + nq + 1)]) + +for i in range(nq): + main.measure(i, i) + +print("[+] Calculating flag...") +emulator = Aer.get_backend('qasm_simulator') +job = execute(main, emulator, shots=1024) +hist = job.result().get_counts() +result = sorted(hist.items(), key=lambda x: -x[1])[0][0] + +print("[+] FLAG:") +print(int.to_bytes(int(result, 2), nq//8, 'little'))