From 92666df3f64f6b5306e8e6ffbc180fa73327d57b Mon Sep 17 00:00:00 2001 From: BAF1927 Date: Fri, 14 Aug 2026 11:18:13 -0400 Subject: [PATCH 1/9] Hoist clause-satisfaction check out of the head-grounding loop MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit In `_ground_rule`, the node-head branch called `check_all_clause_satisfaction` once per head grounding, inside `for head_grounding in groundings[head_var_1]`. The check does not take `head_grounding`, so the only way its result could vary between iterations is if the loop body mutated state the check reads. The body has exactly one such mutation, `_add_node`, guarded by `add_head_var_node_to_graph` — and that flag is only ever set on the branch that assigns `groundings[head_var_1]` a single-element list. When the mutation can fire, the loop runs once, so there is nothing to differ. The check is therefore loop-invariant, and the work it repeated scaled with the number of head groundings: O(clauses x groundings) re-evaluated K times per rule firing. Run it once, before the loop, and enter the loop only if it passes. Guard it behind a non-empty head-grounding check so a rule with no heads does no work. `satisfaction` is not read after this block, so initializing it to False changes nothing observable. The edge-head branch keeps its per-iteration check: that one reads `temp_groundings`, which is rebuilt for each head pair and is genuinely not invariant. Measured on a Friends/owns graph with many candidate heads, identical observable output in both variants: people before after speedup 100 0.232 s 0.169 s 1.37x 500 2.320 s 1.164 s 1.99x 1,000 9.282 s 3.660 s 2.54x 2,000 37.127 s 6.089 s 6.10x Applied identically to interpretation.py, interpretation_fp.py and interpretation_parallel.py; the latter still differs from the first only in the parallel= decorator. Co-Authored-By: Claude Opus 5 (1M context) --- .../scripts/interpretation/interpretation.py | 164 +++++++++--------- .../interpretation/interpretation_fp.py | 164 +++++++++--------- .../interpretation/interpretation_parallel.py | 164 +++++++++--------- 3 files changed, 252 insertions(+), 240 deletions(-) diff --git a/pyreason/scripts/interpretation/interpretation.py b/pyreason/scripts/interpretation/interpretation.py index c2e1a187..d4bda1db 100755 --- a/pyreason/scripts/interpretation/interpretation.py +++ b/pyreason/scripts/interpretation/interpretation.py @@ -976,90 +976,94 @@ def _ground_rule(rule, interpretations_node, interpretations_edge, predicate_map # is allocated K*N times (K head groundings * N clauses) below, but the data # is rule-static. Hoist a precomputed `clause_variables_precomputed` list # here and append references in the inner loop instead of fresh copies. - for head_grounding in groundings[head_var_1]: - qualified_nodes = numba.typed.List.empty_list(numba.typed.List.empty_list(node_type)) - qualified_edges = numba.typed.List.empty_list(numba.typed.List.empty_list(edge_type)) - annotations = numba.typed.List.empty_list(numba.typed.List.empty_list(interval.interval_type)) - clause_labels_out = numba.typed.List.empty_list(label.label_type) - clause_variables_out = numba.typed.List.empty_list(numba.typed.List.empty_list(numba.types.string)) - edges_to_be_added = (numba.typed.List.empty_list(node_type), numba.typed.List.empty_list(node_type), rule_edges[-1]) - # Check for satisfaction one more time in case the refining process has changed the groundings + # Recheck thresholds once after refining / head-var setup. The check does not + # take head_grounding, and this loop does not mutate groundings / interpretations + # between iterations, so repeating it per head is redundant. + # Skip the check when there are no head groundings (nothing to emit). + satisfaction = False + if len(groundings[head_var_1]) > 0: satisfaction = check_all_clause_satisfaction(interpretations_node, interpretations_edge, clauses, thresholds, groundings, groundings_edges, closed_world_predicates) - if not satisfaction: - continue - - for i, clause in enumerate(clauses): - clause_type = clause[0] - clause_label = clause[1] - clause_variables = clause[2] - - - if clause_type == 'node': - clause_var_1 = clause_variables[0] - - # 1. - if atom_trace or extended_ann_fn: - if clause_var_1 == head_var_1: - qualified_nodes.append(numba.typed.List([head_grounding])) - else: - qualified_nodes.append(numba.typed.List(groundings[clause_var_1])) - qualified_edges.append(numba.typed.List.empty_list(edge_type)) - if extended_ann_fn: - clause_labels_out.append(clause_label) - clause_variables_out.append(numba.typed.List(clause_variables)) - # 2. - if ann_fn != '': - a = numba.typed.List.empty_list(interval.interval_type) - if clause_var_1 == head_var_1: - a.append(interpretations_node[head_grounding].world[clause_label]) - else: - for qn in groundings[clause_var_1]: - a.append(interpretations_node[qn].world[clause_label]) - annotations.append(a) - - elif clause_type == 'edge': - clause_var_1, clause_var_2 = clause_variables[0], clause_variables[1] - # 1. - if atom_trace or extended_ann_fn: - # Cases: Both equal, one equal, none equal - qualified_nodes.append(numba.typed.List.empty_list(node_type)) - if clause_var_1 == head_var_1: - es = numba.typed.List([e for e in groundings_edges[(clause_var_1, clause_var_2)] if e[0] == head_grounding]) - qualified_edges.append(es) - elif clause_var_2 == head_var_1: - es = numba.typed.List([e for e in groundings_edges[(clause_var_1, clause_var_2)] if e[1] == head_grounding]) - qualified_edges.append(es) - else: - qualified_edges.append(numba.typed.List(groundings_edges[(clause_var_1, clause_var_2)])) - if extended_ann_fn: - clause_labels_out.append(clause_label) - clause_variables_out.append(numba.typed.List(clause_variables)) - # 2. - if ann_fn != '': - a = numba.typed.List.empty_list(interval.interval_type) - if clause_var_1 == head_var_1: - for e in groundings_edges[(clause_var_1, clause_var_2)]: - if e[0] == head_grounding: - a.append(interpretations_edge[e].world[clause_label]) - elif clause_var_2 == head_var_1: - for e in groundings_edges[(clause_var_1, clause_var_2)]: - if e[1] == head_grounding: - a.append(interpretations_edge[e].world[clause_label]) - else: - for qe in groundings_edges[(clause_var_1, clause_var_2)]: - a.append(interpretations_edge[qe].world[clause_label]) - annotations.append(a) - else: - # Comparison clause (we do not handle for now) - pass + if satisfaction: + for head_grounding in groundings[head_var_1]: + qualified_nodes = numba.typed.List.empty_list(numba.typed.List.empty_list(node_type)) + qualified_edges = numba.typed.List.empty_list(numba.typed.List.empty_list(edge_type)) + annotations = numba.typed.List.empty_list(numba.typed.List.empty_list(interval.interval_type)) + clause_labels_out = numba.typed.List.empty_list(label.label_type) + clause_variables_out = numba.typed.List.empty_list(numba.typed.List.empty_list(numba.types.string)) + edges_to_be_added = (numba.typed.List.empty_list(node_type), numba.typed.List.empty_list(node_type), rule_edges[-1]) + + for i, clause in enumerate(clauses): + clause_type = clause[0] + clause_label = clause[1] + clause_variables = clause[2] + + + if clause_type == 'node': + clause_var_1 = clause_variables[0] + + # 1. + if atom_trace or extended_ann_fn: + if clause_var_1 == head_var_1: + qualified_nodes.append(numba.typed.List([head_grounding])) + else: + qualified_nodes.append(numba.typed.List(groundings[clause_var_1])) + qualified_edges.append(numba.typed.List.empty_list(edge_type)) + if extended_ann_fn: + clause_labels_out.append(clause_label) + clause_variables_out.append(numba.typed.List(clause_variables)) + # 2. + if ann_fn != '': + a = numba.typed.List.empty_list(interval.interval_type) + if clause_var_1 == head_var_1: + a.append(interpretations_node[head_grounding].world[clause_label]) + else: + for qn in groundings[clause_var_1]: + a.append(interpretations_node[qn].world[clause_label]) + annotations.append(a) + + elif clause_type == 'edge': + clause_var_1, clause_var_2 = clause_variables[0], clause_variables[1] + # 1. + if atom_trace or extended_ann_fn: + # Cases: Both equal, one equal, none equal + qualified_nodes.append(numba.typed.List.empty_list(node_type)) + if clause_var_1 == head_var_1: + es = numba.typed.List([e for e in groundings_edges[(clause_var_1, clause_var_2)] if e[0] == head_grounding]) + qualified_edges.append(es) + elif clause_var_2 == head_var_1: + es = numba.typed.List([e for e in groundings_edges[(clause_var_1, clause_var_2)] if e[1] == head_grounding]) + qualified_edges.append(es) + else: + qualified_edges.append(numba.typed.List(groundings_edges[(clause_var_1, clause_var_2)])) + if extended_ann_fn: + clause_labels_out.append(clause_label) + clause_variables_out.append(numba.typed.List(clause_variables)) + # 2. + if ann_fn != '': + a = numba.typed.List.empty_list(interval.interval_type) + if clause_var_1 == head_var_1: + for e in groundings_edges[(clause_var_1, clause_var_2)]: + if e[0] == head_grounding: + a.append(interpretations_edge[e].world[clause_label]) + elif clause_var_2 == head_var_1: + for e in groundings_edges[(clause_var_1, clause_var_2)]: + if e[1] == head_grounding: + a.append(interpretations_edge[e].world[clause_label]) + else: + for qe in groundings_edges[(clause_var_1, clause_var_2)]: + a.append(interpretations_edge[qe].world[clause_label]) + annotations.append(a) + else: + # Comparison clause (we do not handle for now) + pass - # Now that we're sure that the rule is satisfied, we add the head to the graph if needed (only for ground rules) - if add_head_var_node_to_graph: - _add_node(head_var_1, neighbors, reverse_neighbors, nodes, interpretations_node) + # Now that we're sure that the rule is satisfied, we add the head to the graph if needed (only for ground rules) + if add_head_var_node_to_graph: + _add_node(head_var_1, neighbors, reverse_neighbors, nodes, interpretations_node) - # For each grounding add a rule to be applied - applicable_rules_node.append((head_grounding, annotations, qualified_nodes, qualified_edges, edges_to_be_added, clause_labels_out, clause_variables_out)) + # For each grounding add a rule to be applied + applicable_rules_node.append((head_grounding, annotations, qualified_nodes, qualified_edges, edges_to_be_added, clause_labels_out, clause_variables_out)) elif rule_type == 'edge': head_var_1 = head_variables[0] diff --git a/pyreason/scripts/interpretation/interpretation_fp.py b/pyreason/scripts/interpretation/interpretation_fp.py index 2cf174d0..207f9377 100755 --- a/pyreason/scripts/interpretation/interpretation_fp.py +++ b/pyreason/scripts/interpretation/interpretation_fp.py @@ -1098,89 +1098,93 @@ def _ground_rule(rule, interpretations_node, interpretations_edge, predicate_map # is allocated K*N times (K head groundings * N clauses) below, but the data # is rule-static. Hoist a precomputed `clause_variables_precomputed` list # here and append references in the inner loop instead of fresh copies. - for head_grounding in groundings[head_var_1]: - qualified_nodes = numba.typed.List.empty_list(numba.typed.List.empty_list(node_type)) - qualified_edges = numba.typed.List.empty_list(numba.typed.List.empty_list(edge_type)) - annotations = numba.typed.List.empty_list(numba.typed.List.empty_list(interval.interval_type)) - clause_labels_out = numba.typed.List.empty_list(label.label_type) - clause_variables_out = numba.typed.List.empty_list(numba.typed.List.empty_list(numba.types.string)) - edges_to_be_added = (numba.typed.List.empty_list(node_type), numba.typed.List.empty_list(node_type), rule_edges[-1]) - - # Check for satisfaction one more time in case the refining process has changed the groundings + # Recheck thresholds once after refining / head-var setup. The check does not + # take head_grounding, and this loop does not mutate groundings / interpretations + # between iterations, so repeating it per head is redundant. + # Skip the check when there are no head groundings (nothing to emit). + satisfaction = False + if len(groundings[head_var_1]) > 0: satisfaction = check_all_clause_satisfaction(interpretations_node, interpretations_edge, clauses, thresholds, groundings, groundings_edges, closed_world_predicates) - if not satisfaction: - continue - - for i, clause in enumerate(clauses): - clause_type = clause[0] - clause_label = clause[1] - clause_variables = clause[2] - - if clause_type == 'node': - clause_var_1 = clause_variables[0] - - # 1. - if atom_trace or extended_ann_fn: - if clause_var_1 == head_var_1: - qualified_nodes.append(numba.typed.List([head_grounding])) - else: - qualified_nodes.append(numba.typed.List(groundings[clause_var_1])) - qualified_edges.append(numba.typed.List.empty_list(edge_type)) - if extended_ann_fn: - clause_labels_out.append(clause_label) - clause_variables_out.append(numba.typed.List(clause_variables)) - # 2. - if ann_fn != '': - a = numba.typed.List.empty_list(interval.interval_type) - if clause_var_1 == head_var_1: - a.append(interpretations_node[head_grounding].world[clause_label]) - else: - for qn in groundings[clause_var_1]: - a.append(interpretations_node[qn].world[clause_label]) - annotations.append(a) - - elif clause_type == 'edge': - clause_var_1, clause_var_2 = clause_variables[0], clause_variables[1] - # 1. - if atom_trace or extended_ann_fn: - # Cases: Both equal, one equal, none equal - qualified_nodes.append(numba.typed.List.empty_list(node_type)) - if clause_var_1 == head_var_1: - es = numba.typed.List([e for e in groundings_edges[(clause_var_1, clause_var_2)] if e[0] == head_grounding]) - qualified_edges.append(es) - elif clause_var_2 == head_var_1: - es = numba.typed.List([e for e in groundings_edges[(clause_var_1, clause_var_2)] if e[1] == head_grounding]) - qualified_edges.append(es) - else: - qualified_edges.append(numba.typed.List(groundings_edges[(clause_var_1, clause_var_2)])) - if extended_ann_fn: - clause_labels_out.append(clause_label) - clause_variables_out.append(numba.typed.List(clause_variables)) - # 2. - if ann_fn != '': - a = numba.typed.List.empty_list(interval.interval_type) - if clause_var_1 == head_var_1: - for e in groundings_edges[(clause_var_1, clause_var_2)]: - if e[0] == head_grounding: - a.append(interpretations_edge[e].world[clause_label]) - elif clause_var_2 == head_var_1: - for e in groundings_edges[(clause_var_1, clause_var_2)]: - if e[1] == head_grounding: - a.append(interpretations_edge[e].world[clause_label]) - else: - for qe in groundings_edges[(clause_var_1, clause_var_2)]: - a.append(interpretations_edge[qe].world[clause_label]) - annotations.append(a) - else: - # Comparison clause (we do not handle for now) - pass + if satisfaction: + for head_grounding in groundings[head_var_1]: + + qualified_nodes = numba.typed.List.empty_list(numba.typed.List.empty_list(node_type)) + qualified_edges = numba.typed.List.empty_list(numba.typed.List.empty_list(edge_type)) + annotations = numba.typed.List.empty_list(numba.typed.List.empty_list(interval.interval_type)) + clause_labels_out = numba.typed.List.empty_list(label.label_type) + clause_variables_out = numba.typed.List.empty_list(numba.typed.List.empty_list(numba.types.string)) + edges_to_be_added = (numba.typed.List.empty_list(node_type), numba.typed.List.empty_list(node_type), rule_edges[-1]) + + for i, clause in enumerate(clauses): + clause_type = clause[0] + clause_label = clause[1] + clause_variables = clause[2] + + if clause_type == 'node': + clause_var_1 = clause_variables[0] + + # 1. + if atom_trace or extended_ann_fn: + if clause_var_1 == head_var_1: + qualified_nodes.append(numba.typed.List([head_grounding])) + else: + qualified_nodes.append(numba.typed.List(groundings[clause_var_1])) + qualified_edges.append(numba.typed.List.empty_list(edge_type)) + if extended_ann_fn: + clause_labels_out.append(clause_label) + clause_variables_out.append(numba.typed.List(clause_variables)) + # 2. + if ann_fn != '': + a = numba.typed.List.empty_list(interval.interval_type) + if clause_var_1 == head_var_1: + a.append(interpretations_node[head_grounding].world[clause_label]) + else: + for qn in groundings[clause_var_1]: + a.append(interpretations_node[qn].world[clause_label]) + annotations.append(a) + + elif clause_type == 'edge': + clause_var_1, clause_var_2 = clause_variables[0], clause_variables[1] + # 1. + if atom_trace or extended_ann_fn: + # Cases: Both equal, one equal, none equal + qualified_nodes.append(numba.typed.List.empty_list(node_type)) + if clause_var_1 == head_var_1: + es = numba.typed.List([e for e in groundings_edges[(clause_var_1, clause_var_2)] if e[0] == head_grounding]) + qualified_edges.append(es) + elif clause_var_2 == head_var_1: + es = numba.typed.List([e for e in groundings_edges[(clause_var_1, clause_var_2)] if e[1] == head_grounding]) + qualified_edges.append(es) + else: + qualified_edges.append(numba.typed.List(groundings_edges[(clause_var_1, clause_var_2)])) + if extended_ann_fn: + clause_labels_out.append(clause_label) + clause_variables_out.append(numba.typed.List(clause_variables)) + # 2. + if ann_fn != '': + a = numba.typed.List.empty_list(interval.interval_type) + if clause_var_1 == head_var_1: + for e in groundings_edges[(clause_var_1, clause_var_2)]: + if e[0] == head_grounding: + a.append(interpretations_edge[e].world[clause_label]) + elif clause_var_2 == head_var_1: + for e in groundings_edges[(clause_var_1, clause_var_2)]: + if e[1] == head_grounding: + a.append(interpretations_edge[e].world[clause_label]) + else: + for qe in groundings_edges[(clause_var_1, clause_var_2)]: + a.append(interpretations_edge[qe].world[clause_label]) + annotations.append(a) + else: + # Comparison clause (we do not handle for now) + pass - # Now that we're sure that the rule is satisfied, we add the head to the graph if needed (only for ground rules) - if add_head_var_node_to_graph: - _add_node(head_var_1, neighbors, reverse_neighbors, nodes, interpretations_node) + # Now that we're sure that the rule is satisfied, we add the head to the graph if needed (only for ground rules) + if add_head_var_node_to_graph: + _add_node(head_var_1, neighbors, reverse_neighbors, nodes, interpretations_node) - # For each grounding add a rule to be applied - applicable_rules_node.append((head_grounding, annotations, qualified_nodes, qualified_edges, edges_to_be_added, clause_labels_out, clause_variables_out)) + # For each grounding add a rule to be applied + applicable_rules_node.append((head_grounding, annotations, qualified_nodes, qualified_edges, edges_to_be_added, clause_labels_out, clause_variables_out)) elif rule_type == 'edge': head_var_1 = head_variables[0] diff --git a/pyreason/scripts/interpretation/interpretation_parallel.py b/pyreason/scripts/interpretation/interpretation_parallel.py index 251713b8..32d7b3fc 100644 --- a/pyreason/scripts/interpretation/interpretation_parallel.py +++ b/pyreason/scripts/interpretation/interpretation_parallel.py @@ -976,90 +976,94 @@ def _ground_rule(rule, interpretations_node, interpretations_edge, predicate_map # is allocated K*N times (K head groundings * N clauses) below, but the data # is rule-static. Hoist a precomputed `clause_variables_precomputed` list # here and append references in the inner loop instead of fresh copies. - for head_grounding in groundings[head_var_1]: - qualified_nodes = numba.typed.List.empty_list(numba.typed.List.empty_list(node_type)) - qualified_edges = numba.typed.List.empty_list(numba.typed.List.empty_list(edge_type)) - annotations = numba.typed.List.empty_list(numba.typed.List.empty_list(interval.interval_type)) - clause_labels_out = numba.typed.List.empty_list(label.label_type) - clause_variables_out = numba.typed.List.empty_list(numba.typed.List.empty_list(numba.types.string)) - edges_to_be_added = (numba.typed.List.empty_list(node_type), numba.typed.List.empty_list(node_type), rule_edges[-1]) - # Check for satisfaction one more time in case the refining process has changed the groundings + # Recheck thresholds once after refining / head-var setup. The check does not + # take head_grounding, and this loop does not mutate groundings / interpretations + # between iterations, so repeating it per head is redundant. + # Skip the check when there are no head groundings (nothing to emit). + satisfaction = False + if len(groundings[head_var_1]) > 0: satisfaction = check_all_clause_satisfaction(interpretations_node, interpretations_edge, clauses, thresholds, groundings, groundings_edges, closed_world_predicates) - if not satisfaction: - continue - - for i, clause in enumerate(clauses): - clause_type = clause[0] - clause_label = clause[1] - clause_variables = clause[2] - - - if clause_type == 'node': - clause_var_1 = clause_variables[0] - - # 1. - if atom_trace or extended_ann_fn: - if clause_var_1 == head_var_1: - qualified_nodes.append(numba.typed.List([head_grounding])) - else: - qualified_nodes.append(numba.typed.List(groundings[clause_var_1])) - qualified_edges.append(numba.typed.List.empty_list(edge_type)) - if extended_ann_fn: - clause_labels_out.append(clause_label) - clause_variables_out.append(numba.typed.List(clause_variables)) - # 2. - if ann_fn != '': - a = numba.typed.List.empty_list(interval.interval_type) - if clause_var_1 == head_var_1: - a.append(interpretations_node[head_grounding].world[clause_label]) - else: - for qn in groundings[clause_var_1]: - a.append(interpretations_node[qn].world[clause_label]) - annotations.append(a) - - elif clause_type == 'edge': - clause_var_1, clause_var_2 = clause_variables[0], clause_variables[1] - # 1. - if atom_trace or extended_ann_fn: - # Cases: Both equal, one equal, none equal - qualified_nodes.append(numba.typed.List.empty_list(node_type)) - if clause_var_1 == head_var_1: - es = numba.typed.List([e for e in groundings_edges[(clause_var_1, clause_var_2)] if e[0] == head_grounding]) - qualified_edges.append(es) - elif clause_var_2 == head_var_1: - es = numba.typed.List([e for e in groundings_edges[(clause_var_1, clause_var_2)] if e[1] == head_grounding]) - qualified_edges.append(es) - else: - qualified_edges.append(numba.typed.List(groundings_edges[(clause_var_1, clause_var_2)])) - if extended_ann_fn: - clause_labels_out.append(clause_label) - clause_variables_out.append(numba.typed.List(clause_variables)) - # 2. - if ann_fn != '': - a = numba.typed.List.empty_list(interval.interval_type) - if clause_var_1 == head_var_1: - for e in groundings_edges[(clause_var_1, clause_var_2)]: - if e[0] == head_grounding: - a.append(interpretations_edge[e].world[clause_label]) - elif clause_var_2 == head_var_1: - for e in groundings_edges[(clause_var_1, clause_var_2)]: - if e[1] == head_grounding: - a.append(interpretations_edge[e].world[clause_label]) - else: - for qe in groundings_edges[(clause_var_1, clause_var_2)]: - a.append(interpretations_edge[qe].world[clause_label]) - annotations.append(a) - else: - # Comparison clause (we do not handle for now) - pass + if satisfaction: + for head_grounding in groundings[head_var_1]: + qualified_nodes = numba.typed.List.empty_list(numba.typed.List.empty_list(node_type)) + qualified_edges = numba.typed.List.empty_list(numba.typed.List.empty_list(edge_type)) + annotations = numba.typed.List.empty_list(numba.typed.List.empty_list(interval.interval_type)) + clause_labels_out = numba.typed.List.empty_list(label.label_type) + clause_variables_out = numba.typed.List.empty_list(numba.typed.List.empty_list(numba.types.string)) + edges_to_be_added = (numba.typed.List.empty_list(node_type), numba.typed.List.empty_list(node_type), rule_edges[-1]) + + for i, clause in enumerate(clauses): + clause_type = clause[0] + clause_label = clause[1] + clause_variables = clause[2] + + + if clause_type == 'node': + clause_var_1 = clause_variables[0] + + # 1. + if atom_trace or extended_ann_fn: + if clause_var_1 == head_var_1: + qualified_nodes.append(numba.typed.List([head_grounding])) + else: + qualified_nodes.append(numba.typed.List(groundings[clause_var_1])) + qualified_edges.append(numba.typed.List.empty_list(edge_type)) + if extended_ann_fn: + clause_labels_out.append(clause_label) + clause_variables_out.append(numba.typed.List(clause_variables)) + # 2. + if ann_fn != '': + a = numba.typed.List.empty_list(interval.interval_type) + if clause_var_1 == head_var_1: + a.append(interpretations_node[head_grounding].world[clause_label]) + else: + for qn in groundings[clause_var_1]: + a.append(interpretations_node[qn].world[clause_label]) + annotations.append(a) + + elif clause_type == 'edge': + clause_var_1, clause_var_2 = clause_variables[0], clause_variables[1] + # 1. + if atom_trace or extended_ann_fn: + # Cases: Both equal, one equal, none equal + qualified_nodes.append(numba.typed.List.empty_list(node_type)) + if clause_var_1 == head_var_1: + es = numba.typed.List([e for e in groundings_edges[(clause_var_1, clause_var_2)] if e[0] == head_grounding]) + qualified_edges.append(es) + elif clause_var_2 == head_var_1: + es = numba.typed.List([e for e in groundings_edges[(clause_var_1, clause_var_2)] if e[1] == head_grounding]) + qualified_edges.append(es) + else: + qualified_edges.append(numba.typed.List(groundings_edges[(clause_var_1, clause_var_2)])) + if extended_ann_fn: + clause_labels_out.append(clause_label) + clause_variables_out.append(numba.typed.List(clause_variables)) + # 2. + if ann_fn != '': + a = numba.typed.List.empty_list(interval.interval_type) + if clause_var_1 == head_var_1: + for e in groundings_edges[(clause_var_1, clause_var_2)]: + if e[0] == head_grounding: + a.append(interpretations_edge[e].world[clause_label]) + elif clause_var_2 == head_var_1: + for e in groundings_edges[(clause_var_1, clause_var_2)]: + if e[1] == head_grounding: + a.append(interpretations_edge[e].world[clause_label]) + else: + for qe in groundings_edges[(clause_var_1, clause_var_2)]: + a.append(interpretations_edge[qe].world[clause_label]) + annotations.append(a) + else: + # Comparison clause (we do not handle for now) + pass - # Now that we're sure that the rule is satisfied, we add the head to the graph if needed (only for ground rules) - if add_head_var_node_to_graph: - _add_node(head_var_1, neighbors, reverse_neighbors, nodes, interpretations_node) + # Now that we're sure that the rule is satisfied, we add the head to the graph if needed (only for ground rules) + if add_head_var_node_to_graph: + _add_node(head_var_1, neighbors, reverse_neighbors, nodes, interpretations_node) - # For each grounding add a rule to be applied - applicable_rules_node.append((head_grounding, annotations, qualified_nodes, qualified_edges, edges_to_be_added, clause_labels_out, clause_variables_out)) + # For each grounding add a rule to be applied + applicable_rules_node.append((head_grounding, annotations, qualified_nodes, qualified_edges, edges_to_be_added, clause_labels_out, clause_variables_out)) elif rule_type == 'edge': head_var_1 = head_variables[0] From a1f14926e65c9aba3d39be8a5e6f22b7a353729c Mon Sep 17 00:00:00 2001 From: Colton Date: Fri, 14 Aug 2026 15:52:44 -0400 Subject: [PATCH 2/9] CI: pin ruff to 0.15.22 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Ruff 0.16.0 (2026-07-23) expanded its default rule set from 59 rules to 413 — the first change to that default since v0.1.0. The workflow installs ruff unpinned and pyproject.toml sets no `select`, so the repo silently inherited all 413 and now reports ~289 findings (SIM, UP, RUF, I001, BLE, EXE, PIE, FURB, C4) on code that was green in May. This is not specific to any one branch: main has not run CI since 2026-05-13 and fails the same way, so every PR opened after 0.16.0 landed was broken on arrival regardless of its contents. Pin to 0.15.22, the last release carrying the old E4/E7/E9/F default, so lint results depend on the code rather than on when the job happened to run. Note that 0.16 also dropped 18 rules from the defaults, E741 among them, so the existing per-file-ignore stays necessary under this pin. Adopting the broader rule set remains an option, but it needs an explicit `select` plus a deliberate one-time cleanup, reviewed on its own. Co-Authored-By: Claude Opus 5 (1M context) --- .github/workflows/python-package-version-test.yml | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/.github/workflows/python-package-version-test.yml b/.github/workflows/python-package-version-test.yml index fb4a0da0..4a0f3791 100644 --- a/.github/workflows/python-package-version-test.yml +++ b/.github/workflows/python-package-version-test.yml @@ -27,7 +27,11 @@ jobs: - name: Install dependencies run: | python -m pip install --upgrade pip - python -m pip install ruff pytest + # Pinned: ruff 0.16.0 (2026-07-23) expanded the default rule set from + # 59 rules to 413, which fails this repo with ~289 findings. 0.15.22 is + # the last release with the old E4/E7/E9/F default. Unpin only together + # with an explicit `select` in pyproject.toml and the matching cleanup. + python -m pip install ruff==0.15.22 pytest pip install torch==2.6.0 if [ -f requirements.txt ]; then pip install -r requirements.txt; fi - name: Lint with ruff From cb7a2b3260750ce7ea7f9fce4f3e7a441a3a6a2a Mon Sep 17 00:00:00 2001 From: BAF1927 Date: Sun, 16 Aug 2026 21:42:47 -0400 Subject: [PATCH 3/9] Pyreasons Performance Test cases --- .github/workflows/perf.yml | 92 + .gitignore | 5 + benchmarks/pokec/README.md | 90 + benchmarks/pokec/baselines.json | 11 + .../pokec/fixtures/pokec-2k-customers.json | 7 + benchmarks/pokec/fixtures/pokec-2k.graphml | 60575 ++++++++++++++++ benchmarks/pokec/generate_fixtures.py | 359 + benchmarks/pokec/run_bench.py | 266 + 8 files changed, 61405 insertions(+) create mode 100644 .github/workflows/perf.yml create mode 100644 benchmarks/pokec/README.md create mode 100644 benchmarks/pokec/baselines.json create mode 100644 benchmarks/pokec/fixtures/pokec-2k-customers.json create mode 100644 benchmarks/pokec/fixtures/pokec-2k.graphml create mode 100644 benchmarks/pokec/generate_fixtures.py create mode 100644 benchmarks/pokec/run_bench.py diff --git a/.github/workflows/perf.yml b/.github/workflows/perf.yml new file mode 100644 index 00000000..805b12a1 --- /dev/null +++ b/.github/workflows/perf.yml @@ -0,0 +1,92 @@ +name: perf + +on: + pull_request: + push: + branches: [main] + schedule: + - cron: "17 6 * * *" + workflow_dispatch: + inputs: + band: + description: "2k, 10k, or both" + default: "both" + type: choice + options: + - both + - 2k + - 10k + +jobs: + pokec-2k: + if: > + github.event_name != 'schedule' && + (github.event_name != 'workflow_dispatch' || + github.event.inputs.band == '2k' || + github.event.inputs.band == 'both') + runs-on: ubuntu-latest + timeout-minutes: 45 + steps: + - uses: actions/checkout@v4 + - uses: actions/setup-python@v5 + with: + python-version: "3.10" + - name: Install package + run: | + python -m pip install --upgrade pip + pip install . + - name: Pokec 2k bench + run: | + python benchmarks/pokec/run_bench.py \ + --fixture benchmarks/pokec/fixtures/pokec-2k.graphml \ + --customers benchmarks/pokec/fixtures/pokec-2k-customers.json \ + --repeats 3 --band pokec-2k --out pokec-2k-report.json + - uses: actions/upload-artifact@v4 + if: always() + with: + name: pokec-2k-report + path: pokec-2k-report.json + + pokec-10k: + if: > + github.event_name == 'schedule' || + (github.event_name == 'workflow_dispatch' && + (github.event.inputs.band == '10k' || github.event.inputs.band == 'both')) + runs-on: ubuntu-latest + timeout-minutes: 300 + steps: + - uses: actions/checkout@v4 + - uses: actions/setup-python@v5 + with: + python-version: "3.10" + - name: Install package + run: | + python -m pip install --upgrade pip + pip install . + - name: Restore 10k fixture + id: fixture-cache + uses: actions/cache@v4 + with: + path: benchmarks/pokec/fixtures/pokec-10k* + key: pokec-10k-fixture-${{ hashFiles('benchmarks/pokec/generate_fixtures.py') }} + - name: Generate 10k fixture (cache miss only) + if: steps.fixture-cache.outputs.cache-hit != 'true' + run: | + mkdir -p benchmarks/pokec/data + curl -sSf -o benchmarks/pokec/data/soc-pokec-relationships.txt.gz \ + https://snap.stanford.edu/data/soc-pokec-relationships.txt.gz + curl -sSf -o benchmarks/pokec/data/soc-pokec-profiles.txt.gz \ + https://snap.stanford.edu/data/soc-pokec-profiles.txt.gz + python benchmarks/pokec/generate_fixtures.py \ + --data-dir benchmarks/pokec/data --rungs 10k --write + - name: Pokec 10k bench + run: | + python benchmarks/pokec/run_bench.py \ + --fixture benchmarks/pokec/fixtures/pokec-10k.graphml \ + --customers benchmarks/pokec/fixtures/pokec-10k-customers.json \ + --repeats 1 --band pokec-10k --out pokec-10k-report.json + - uses: actions/upload-artifact@v4 + if: always() + with: + name: pokec-10k-report + path: pokec-10k-report.json diff --git a/.gitignore b/.gitignore index 347f7941..c36cd5a5 100755 --- a/.gitignore +++ b/.gitignore @@ -175,3 +175,8 @@ cython_debug/ # Sphinx Documentation /docs/source/_static/css/fonts/ + +# Pokec SNAP downloads (fixtures under benchmarks/pokec/fixtures/ are committed) +benchmarks/pokec/data/ +benchmarks/pokec/fixtures/pokec-10k* +*-report.json diff --git a/benchmarks/pokec/README.md b/benchmarks/pokec/README.md new file mode 100644 index 00000000..344a2816 --- /dev/null +++ b/benchmarks/pokec/README.md @@ -0,0 +1,90 @@ +# Pokec performance benchmarks + +Cliff-tripwire benchmarks shaped like PyReason paper §4.2 (arXiv:2302.13482): +relevance diffusion on a SNAP soc-Pokec subgraph. Hosted GitHub Actions only — +no self-hosted runners. + +## Layout + +| Path | Role | +|------|------| +| `generate_fixtures.py` | Deterministic fixture builder from SNAP dumps | +| `run_bench.py` | Fresh-process runner; times import / setup / reason | +| `baselines.json` | Banked `relevance_rows` + `reason_s_max` thresholds | +| `fixtures/pokec-2k.*` | Committed per-PR fixture (~1.6 MB GraphML) | +| `fixtures/pokec-10k.*` | Generated in nightly CI; **not** committed | +| `data/` | Local SNAP downloads; gitignored | + +## Dataset (do not commit) + +Download once into `benchmarks/pokec/data/`: + +- https://snap.stanford.edu/data/soc-pokec-relationships.txt.gz +- https://snap.stanford.edu/data/soc-pokec-profiles.txt.gz + +Integrity (gunzip line counts): relationships **30,622,564**; profiles **1,632,803**. + +## Fixture generation + +```bash +python benchmarks/pokec/generate_fixtures.py \ + --data-dir benchmarks/pokec/data --rungs 2k --write + +python benchmarks/pokec/generate_fixtures.py \ + --data-dir benchmarks/pokec/data --rungs 10k --write +``` + +Spec (must match exactly for the verified 10k cross-check): + +- Rung = N smallest profile user ids; keep edges with both ends kept. +- `hasPet` from Slovak `pets` text (column 13) via the fixed stem→token map. +- Customers: paper proportion `2308/1632803`, every k-th sorted owner. +- GraphML: users then pet tokens; friend edges in SNAP order; hasPet by owner. + +Reference **10k** counts (asserted): 10,000 users, **121,716** friend edges, +**6,204** hasPet edges, **14** customers. **2k** counts are banked in the +generator (`18,315` / `1,203` / `5`). + +## Running the bench + +```bash +# Per-PR band (3 fresh-process repeats, median) +python benchmarks/pokec/run_bench.py \ + --fixture benchmarks/pokec/fixtures/pokec-2k.graphml \ + --customers benchmarks/pokec/fixtures/pokec-2k-customers.json \ + --repeats 3 --band pokec-2k --out pokec-2k-report.json +``` + +Timed windows: `import_s`, `setup_s`, `reason_s`. Thresholds apply to +`reason_s` only. After `reason()`, `relevance_rows` at the final timestep must +**exactly** match `baselines.json` (semantics tripwire). First child is an +untimed warmup so Numba compilation stays out of measured windows. +`PYTHONHASHSEED=0` on every child. + +Verified **10k** `relevance_rows` on current-main / PR #160 semantics: **8006**. +Banked **2k** `relevance_rows`: **1573**. `reason_s_max` stays `null` until +banked from Actions (see below). + +## CI (`.github/workflows/perf.yml`) + +| Job | When | Notes | +|-----|------|-------| +| `pokec-2k` | every PR / push to main / manual | committed fixture; 45 min timeout | +| `pokec-10k` | nightly cron + `workflow_dispatch` | downloads SNAP only on cache miss | + +Existing `python-package-version-test.yml` / `python-publish.yml` are untouched. + +## Re-banking baselines + +Re-banking is a **deliberate, reviewed** edit to `baselines.json` — never +automatic. + +1. Run the band 3× on Actions (`workflow_dispatch`), collect median `reason_s` + from each report artifact. +2. Take the **worst** median, multiply by **2.0**, set `reason_s_max`. +3. Set `relevance_rows` to the observed count (must be identical across runs). +4. Open a PR whose description cites the three report artifacts. + +`relevance_rows` mismatches are hard failures. `reason_s` over threshold fails +with a message to re-run once before investigating (hosted-runner noise +±20–30% is expected; real historical regressions were ≥×4.4). diff --git a/benchmarks/pokec/baselines.json b/benchmarks/pokec/baselines.json new file mode 100644 index 00000000..5d93b7c9 --- /dev/null +++ b/benchmarks/pokec/baselines.json @@ -0,0 +1,11 @@ +{ + "runner": "ubuntu-latest", + "pokec-2k": { + "reason_s_max": null, + "relevance_rows": 1573 + }, + "pokec-10k": { + "reason_s_max": null, + "relevance_rows": 8006 + } +} diff --git a/benchmarks/pokec/fixtures/pokec-2k-customers.json b/benchmarks/pokec/fixtures/pokec-2k-customers.json new file mode 100644 index 00000000..7da15f04 --- /dev/null +++ b/benchmarks/pokec/fixtures/pokec-2k-customers.json @@ -0,0 +1,7 @@ +[ + 1, + 412, + 789, + 1168, + 1566 +] diff --git a/benchmarks/pokec/fixtures/pokec-2k.graphml b/benchmarks/pokec/fixtures/pokec-2k.graphml new file mode 100644 index 00000000..d3eff45b --- /dev/null +++ b/benchmarks/pokec/fixtures/pokec-2k.graphml @@ -0,0 +1,60575 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + diff --git a/benchmarks/pokec/generate_fixtures.py b/benchmarks/pokec/generate_fixtures.py new file mode 100644 index 00000000..2ae7bd74 --- /dev/null +++ b/benchmarks/pokec/generate_fixtures.py @@ -0,0 +1,359 @@ +#!/usr/bin/env python3 +"""Deterministic Pokec fixture generator for the paper §4.2-shaped CI bench. + +Reconstructs an id-prefix induced subgraph from SNAP soc-Pokec files. +Every output byte is a pure function of the SNAP inputs and the constants +below — no randomness, no set-iteration-order dependence. + +Usage (from repo root):: + + python benchmarks/pokec/generate_fixtures.py \\ + --data-dir benchmarks/pokec/data --rungs 2k --write + + python benchmarks/pokec/generate_fixtures.py \\ + --data-dir benchmarks/pokec/data --rungs 10k --write +""" +from __future__ import annotations + +import argparse +import gzip +import json +import sys +import xml.sax.saxutils as saxutils +from pathlib import Path + +# Paper customer proportion (arXiv:2302.13482 §4.2). +CUSTOMER_NUMER = 2308 +CUSTOMER_DENOM = 1_632_803 + +# Exact SNAP integrity checks (gunzip line counts). +EXPECTED_RELATIONSHIP_LINES = 30_622_564 +EXPECTED_PROFILE_LINES = 1_632_803 + +PET_STEMS = ( + ("psa", "dog"), + ("pes", "dog"), + ("psik", "dog"), + ("psy", "dog"), + ("mack", "cat"), + ("macic", "cat"), + ("rybk", "fish"), + ("rybic", "fish"), + ("akvari", "fish"), + ("vtacik", "bird"), + ("vtaci", "bird"), + ("kanarik", "bird"), + ("papagaj", "parrot"), + ("andulk", "parrot"), + ("korytnac", "turtle"), + ("skrecok", "hamster"), + ("skreck", "hamster"), + ("hlodav", "rodent"), + ("mys", "rodent"), + ("potkan", "rodent"), + ("morca", "guineapig"), + ("zajac", "rabbit"), + ("kralik", "rabbit"), + ("had", "snake"), + ("pavuk", "spider"), + ("jaster", "lizard"), + ("kon", "horse"), + ("fretk", "ferret"), + ("ryb", "fish"), +) + +RUNG_N = { + "2k": 2_000, + "10k": 10_000, +} + +# Banked after first successful generation. 10k counts are externally verified. +# 2k counts are filled by this script on first --write and asserted thereafter. +EXPECTED_COUNTS = { + "10k": { + "users": 10_000, + "friend_edges": 121_716, + "haspet_edges": 6_204, + "customers": 14, + }, + "2k": { + "users": 2_000, + "friend_edges": 18_315, + "haspet_edges": 1_203, + "customers": 5, + }, +} + + +def _pets_from_text(text: str) -> list[str]: + if not text or text.lower() == "null": + return [] + lowered = text.lower() + found: set[str] = set() + for stem, token in PET_STEMS: + if stem in lowered: + found.add(token) + return sorted(found) + + +def _pick_customers(owners: list[int], n_users: int) -> list[int]: + proportion = CUSTOMER_NUMER / CUSTOMER_DENOM + target = max(5, round(proportion * n_users)) + target = min(target, len(owners)) + if target == 0: + return [] + step = len(owners) / target + return [owners[int(i * step)] for i in range(target)] + + +def _open_maybe_gzip(path: Path): + if str(path).endswith(".gz"): + return gzip.open(path, "rt", encoding="utf-8", errors="replace") + return open(path, "r", encoding="utf-8", errors="replace") + + +def load_profiles(profiles_path: Path, max_id: int | None = None) -> tuple[list[int], dict[int, list[str]], int]: + """Return (sorted user_ids, pets_by_id for kept ids, line_count). + + If max_id is set, only profiles with user_id <= max_id are kept in pets_by_id; + all ids are still collected for sorting/selection (caller filters by N). + """ + user_ids: list[int] = [] + pets_by_id: dict[int, list[str]] = {} + lines = 0 + with _open_maybe_gzip(profiles_path) as fh: + for raw in fh: + lines += 1 + # SNAP profiles may start with comment lines. + if raw.startswith("#"): + continue + parts = raw.rstrip("\n").split("\t") + if not parts or parts[0] == "": + continue + uid = int(parts[0]) + user_ids.append(uid) + pets_text = parts[13] if len(parts) > 13 else "" + if max_id is None or uid <= max_id: + pets = _pets_from_text(pets_text) + if pets: + pets_by_id[uid] = pets + return user_ids, pets_by_id, lines + + +def load_friend_edges(rel_path: Path, kept: set[int]) -> tuple[list[tuple[int, int]], int]: + edges: list[tuple[int, int]] = [] + lines = 0 + with _open_maybe_gzip(rel_path) as fh: + for raw in fh: + lines += 1 + if raw.startswith("#"): + continue + parts = raw.split() + if len(parts) < 2: + continue + src, dst = int(parts[0]), int(parts[1]) + if src in kept and dst in kept: + edges.append((src, dst)) + return edges, lines + + +def build_rung( + profiles_path: Path, + relationships_path: Path, + n: int, + verify_snap_counts: bool = True, +) -> dict: + # First pass: collect all ids, sort, take N smallest — then we know the + # id cutoff so a second pet-filter pass is unnecessary if we load pets for + # all profiles. Profiles is large; we load once and filter. + print(f" reading profiles: {profiles_path}", file=sys.stderr) + all_ids, pets_all, profile_lines = load_profiles(profiles_path, max_id=None) + if verify_snap_counts and profile_lines != EXPECTED_PROFILE_LINES: + raise SystemExit( + f"profiles line count {profile_lines} != expected {EXPECTED_PROFILE_LINES}" + ) + + all_ids_sorted = sorted(set(all_ids)) + if len(all_ids_sorted) < n: + raise SystemExit(f"only {len(all_ids_sorted)} unique users; need {n}") + kept_ids = all_ids_sorted[:n] + kept = set(kept_ids) + max_kept = kept_ids[-1] + + pets_by_id = {uid: pets for uid, pets in pets_all.items() if uid in kept} + # Owners: kept users with ≥1 pet, sorted ascending. + owners = sorted(pets_by_id.keys()) + customers = _pick_customers(owners, n) + + # Pet token universe for this rung. + pet_tokens: set[str] = set() + for pets in pets_by_id.values(): + pet_tokens.update(pets) + pet_tokens_sorted = sorted(pet_tokens) + + print(f" reading relationships (kept ≤ id {max_kept}): {relationships_path}", file=sys.stderr) + friend_edges, rel_lines = load_friend_edges(relationships_path, kept) + if verify_snap_counts and rel_lines != EXPECTED_RELATIONSHIP_LINES: + raise SystemExit( + f"relationships line count {rel_lines} != expected {EXPECTED_RELATIONSHIP_LINES}" + ) + + haspet_edges: list[tuple[int, str]] = [] + for uid in owners: # ascending owner id + for token in pets_by_id[uid]: # already sorted + haspet_edges.append((uid, token)) + + return { + "n": n, + "kept_ids": kept_ids, + "friend_edges": friend_edges, + "haspet_edges": haspet_edges, + "pet_tokens": pet_tokens_sorted, + "customers": customers, + "counts": { + "users": len(kept_ids), + "friend_edges": len(friend_edges), + "haspet_edges": len(haspet_edges), + "customers": len(customers), + "pet_tokens": len(pet_tokens_sorted), + }, + } + + +def write_graphml(path: Path, rung: dict) -> None: + """Write deterministic GraphML: users asc, pets sorted; friends SNAP order; hasPet owner asc.""" + path.parent.mkdir(parents=True, exist_ok=True) + esc = saxutils.escape + with open(path, "w", encoding="utf-8", newline="\n") as fh: + fh.write("\n") + fh.write( + '\n' + ) + fh.write(' \n') + fh.write(' \n') + fh.write(' \n') + for uid in rung["kept_ids"]: + fh.write(f' \n') + for token in rung["pet_tokens"]: + fh.write(f' \n') + for src, dst in rung["friend_edges"]: + fh.write(f' \n') + fh.write(' 1\n') + fh.write(" \n") + for uid, token in rung["haspet_edges"]: + fh.write(f' \n') + fh.write(' 1\n') + fh.write(" \n") + fh.write(" \n") + fh.write("\n") + + +def write_customers(path: Path, customers: list[int]) -> None: + path.parent.mkdir(parents=True, exist_ok=True) + path.write_text(json.dumps(customers, indent=2) + "\n", encoding="utf-8") + + +def assert_counts(rung_name: str, counts: dict) -> None: + expected = EXPECTED_COUNTS.get(rung_name) + if expected is None: + return + for key in ("users", "friend_edges", "haspet_edges", "customers"): + banked = expected.get(key) + if banked is None: + continue + if counts[key] != banked: + raise SystemExit( + f"{rung_name} {key}={counts[key]} != banked {banked} — " + "fixture generation diverged from the verified spec" + ) + + +def _parse_args(): + p = argparse.ArgumentParser(description=__doc__) + p.add_argument( + "--data-dir", + type=Path, + default=Path("benchmarks/pokec/data"), + help="Directory with soc-pokec-*.txt.gz", + ) + p.add_argument( + "--out-dir", + type=Path, + default=Path("benchmarks/pokec/fixtures"), + help="Where to write GraphML + customers JSON", + ) + p.add_argument( + "--rungs", + nargs="+", + choices=sorted(RUNG_N.keys()), + default=["2k"], + help="Which fixture rungs to build", + ) + p.add_argument( + "--write", + action="store_true", + help="Write GraphML + customers JSON (otherwise only print counts)", + ) + p.add_argument( + "--skip-snap-verify", + action="store_true", + help="Skip exact SNAP line-count checks (debug only)", + ) + return p.parse_args() + + +def main() -> int: + args = _parse_args() + profiles = args.data_dir / "soc-pokec-profiles.txt.gz" + relationships = args.data_dir / "soc-pokec-relationships.txt.gz" + if not profiles.exists(): + # Allow uncompressed fallback. + profiles = args.data_dir / "soc-pokec-profiles.txt" + if not relationships.exists(): + relationships = args.data_dir / "soc-pokec-relationships.txt" + if not profiles.exists() or not relationships.exists(): + raise SystemExit( + f"SNAP files not found under {args.data_dir}. " + "Download soc-pokec-profiles.txt.gz and " + "soc-pokec-relationships.txt.gz from SNAP." + ) + + for rung_name in args.rungs: + n = RUNG_N[rung_name] + print(f"=== building {rung_name} (N={n}) ===", file=sys.stderr) + rung = build_rung( + profiles, + relationships, + n, + verify_snap_counts=not args.skip_snap_verify, + ) + counts = rung["counts"] + print(json.dumps({"rung": rung_name, **counts}, indent=2)) + assert_counts(rung_name, counts) + + # On first 2k generation, print the values to bank into EXPECTED_COUNTS. + banked = EXPECTED_COUNTS.get(rung_name, {}) + if any(banked.get(k) is None for k in ("friend_edges", "haspet_edges", "customers")): + print( + f"NOTE: bank these into EXPECTED_COUNTS[{rung_name!r}]: " + f"friend_edges={counts['friend_edges']}, " + f"haspet_edges={counts['haspet_edges']}, " + f"customers={counts['customers']}", + file=sys.stderr, + ) + + if args.write: + graphml = args.out_dir / f"pokec-{rung_name}.graphml" + customers_path = args.out_dir / f"pokec-{rung_name}-customers.json" + write_graphml(graphml, rung) + write_customers(customers_path, rung["customers"]) + print(f"wrote {graphml} and {customers_path}", file=sys.stderr) + + return 0 + + +if __name__ == "__main__": + raise SystemExit(main()) diff --git a/benchmarks/pokec/run_bench.py b/benchmarks/pokec/run_bench.py new file mode 100644 index 00000000..8f4c8690 --- /dev/null +++ b/benchmarks/pokec/run_bench.py @@ -0,0 +1,266 @@ +#!/usr/bin/env python3 +"""Pokec relevance-diffusion performance runner (paper §4.2 shape). + +Standalone: stdlib + pyreason only. Fresh child process per measurement; +thresholds apply to ``reason_s`` only. Semantic tripwire via ``relevance_rows``. + +Parent mode (default):: + + python benchmarks/pokec/run_bench.py \\ + --fixture benchmarks/pokec/fixtures/pokec-2k.graphml \\ + --customers benchmarks/pokec/fixtures/pokec-2k-customers.json \\ + --repeats 3 --band pokec-2k --out pokec-2k-report.json + +Child mode is internal (``--child``); do not invoke directly from CI. +""" +from __future__ import annotations + +import argparse +import json +import os +import statistics +import subprocess +import sys +import time +from pathlib import Path + + +HERE = Path(__file__).resolve().parent +DEFAULT_BASELINES = HERE / "baselines.json" + + +def _parse_args(argv=None): + p = argparse.ArgumentParser(description=__doc__) + p.add_argument("--fixture", type=Path, required=True) + p.add_argument("--customers", type=Path, required=True) + p.add_argument("--repeats", type=int, default=3) + p.add_argument("--band", choices=("pokec-2k", "pokec-10k"), required=True) + p.add_argument("--out", type=Path, default=Path("pokec-report.json")) + p.add_argument("--baselines", type=Path, default=DEFAULT_BASELINES) + p.add_argument( + "--child", + action="store_true", + help="Run one measurement in this process and print JSON to stdout", + ) + p.add_argument( + "--skip-warmup", + action="store_true", + help="Skip the untimed warmup child (debug only)", + ) + return p.parse_args(argv) + + +def _run_program(fixture: Path, customers_path: Path) -> dict: + """Execute the paper program once; return timed windows + relevance_rows.""" + customers = json.loads(customers_path.read_text(encoding="utf-8")) + + t_import0 = time.perf_counter() + import pyreason as pr # noqa: WPS433 — timed deliberately + + import_s = time.perf_counter() - t_import0 + + t_setup0 = time.perf_counter() + pr.settings.verbose = False + # filter_and_sort_nodes needs store_interpretation_changes (default True). + pr.load_graphml(str(fixture)) + pr.add_rule( + pr.Rule( + "relevance(x) : [0.6,1] <-1 relevance(y):[1,1], friend(x,y):[1,1]", + "relevance_friend_rule", + ) + ) + pr.add_rule( + pr.Rule( + "relevance(x) : [1,1] <-1 relevance(y):[1,1], friend(x,y):[1,1], " + "hasPet(x,p):[1,1], hasPet(y,p):[1,1]", + "relevance_same_pet_rule", + ) + ) + for i, uid in enumerate(customers): + pr.add_fact(pr.Fact(f"relevance(u{uid})", f"customer_{i}", 0, 8)) + setup_s = time.perf_counter() - t_setup0 + + t_reason0 = time.perf_counter() + interpretation = pr.reason(timesteps=8) + reason_s = time.perf_counter() - t_reason0 + + df_list = pr.filter_and_sort_nodes(interpretation, ["relevance"]) + final_df = df_list[-1] if df_list else None + relevance_rows = 0 if final_df is None else int(len(final_df)) + + try: + import pyreason as _pr_mod + + pyreason_version = getattr(_pr_mod, "__version__", "unknown") + except Exception: # noqa: BLE001 + pyreason_version = "unknown" + + return { + "import_s": import_s, + "setup_s": setup_s, + "reason_s": reason_s, + "relevance_rows": relevance_rows, + "python": sys.version.split()[0], + "pyreason": pyreason_version, + } + + +def _spawn_child(args, warmup: bool = False) -> dict: + cmd = [ + sys.executable, + str(Path(__file__).resolve()), + "--child", + "--fixture", + str(args.fixture), + "--customers", + str(args.customers), + "--band", + args.band, + "--repeats", + "1", + "--out", + os.devnull, + ] + env = os.environ.copy() + env["PYTHONHASHSEED"] = "0" + # Ensure repo root is importable when running from a checkout. + repo_root = Path(__file__).resolve().parents[2] + env["PYTHONPATH"] = os.pathsep.join( + [str(repo_root), env.get("PYTHONPATH", "")] + ).rstrip(os.pathsep) + label = "warmup" if warmup else "timed" + print(f" spawning {label} child …", flush=True) + proc = subprocess.run( + cmd, + check=False, + capture_output=True, + text=True, + env=env, + ) + if proc.returncode != 0: + sys.stderr.write(proc.stderr or "") + sys.stderr.write(proc.stdout or "") + raise SystemExit(f"child failed with exit {proc.returncode}") + # Child prints a single JSON object on stdout (may have trailing noise). + line = proc.stdout.strip().splitlines()[-1] + return json.loads(line) + + +def _median(xs): + return float(statistics.median(xs)) if xs else None + + +def _load_baselines(path: Path) -> dict: + if not path.exists(): + raise SystemExit(f"baselines file not found: {path}") + return json.loads(path.read_text(encoding="utf-8")) + + +def _evaluate(band: str, report: dict, baselines: dict) -> list[str]: + """Return list of failure messages (empty ⇒ pass).""" + failures: list[str] = [] + bank = baselines.get(band) or {} + expected_rows = bank.get("relevance_rows") + observed_rows = report["medians"]["relevance_rows"] + if expected_rows is None: + report.setdefault("notes", []).append( + f"{band}: relevance_rows not banked yet (observed {observed_rows}); " + "commit that value to baselines.json after a deliberate measurement run" + ) + elif observed_rows != expected_rows: + failures.append( + f"{band}: relevance_rows mismatch — expected {expected_rows}, " + f"got {observed_rows} (semantics change; hard fail)" + ) + + reason_max = bank.get("reason_s_max") + observed_reason = report["medians"]["reason_s"] + if reason_max is None: + # Timing threshold not banked yet — do not fail the job on speed. + report.setdefault("notes", []).append( + f"{band}: reason_s_max not banked; median reason_s={observed_reason:.4f}s " + "(record after 3× workflow_dispatch, threshold = 2× worst median)" + ) + elif observed_reason > reason_max: + failures.append( + f"{band}: reason_s {observed_reason:.4f}s exceeds threshold " + f"{reason_max:.4f}s — may be a real regression or runner noise; " + "re-run once before investigating" + ) + return failures + + +def _parent_main(args) -> int: + baselines = _load_baselines(args.baselines) + if not args.fixture.exists(): + raise SystemExit(f"fixture not found: {args.fixture}") + if not args.customers.exists(): + raise SystemExit(f"customers not found: {args.customers}") + + if not args.skip_warmup: + _spawn_child(args, warmup=True) + + runs = [] + for i in range(args.repeats): + print(f" timed run {i + 1}/{args.repeats}", flush=True) + runs.append(_spawn_child(args, warmup=False)) + + report = { + "band": args.band, + "fixture": str(args.fixture), + "customers": str(args.customers), + "repeats": args.repeats, + "runs": runs, + "medians": { + "import_s": _median([r["import_s"] for r in runs]), + "setup_s": _median([r["setup_s"] for r in runs]), + "reason_s": _median([r["reason_s"] for r in runs]), + "relevance_rows": int(statistics.median([r["relevance_rows"] for r in runs])), + }, + "python": runs[0]["python"] if runs else sys.version.split()[0], + "pyreason": runs[0].get("pyreason", "unknown") if runs else "unknown", + "notes": [], + } + + # All repeats must agree on relevance_rows (determinism). + row_set = {r["relevance_rows"] for r in runs} + if len(row_set) != 1: + report["notes"].append(f"relevance_rows disagreed across runs: {sorted(row_set)}") + + failures = _evaluate(args.band, report, baselines) + # Also fail if repeats disagreed on rows. + if len(row_set) != 1: + failures.append(f"non-deterministic relevance_rows across repeats: {sorted(row_set)}") + + report["pass"] = len(failures) == 0 + report["failures"] = failures + + args.out.parent.mkdir(parents=True, exist_ok=True) + args.out.write_text(json.dumps(report, indent=2) + "\n", encoding="utf-8") + + med = report["medians"] + status = "PASS" if report["pass"] else "FAIL" + print( + f"{status} {args.band}: reason_s_med={med['reason_s']:.4f}s " + f"setup_s_med={med['setup_s']:.4f}s import_s_med={med['import_s']:.4f}s " + f"relevance_rows={med['relevance_rows']} → {args.out}" + ) + for msg in report.get("notes", []): + print(f"NOTE: {msg}") + for msg in failures: + print(f"FAIL: {msg}", file=sys.stderr) + return 0 if report["pass"] else 1 + + +def main(argv=None) -> int: + args = _parse_args(argv) + if args.child: + payload = _run_program(args.fixture, args.customers) + # Single JSON line for the parent to parse. + print(json.dumps(payload), flush=True) + return 0 + return _parent_main(args) + + +if __name__ == "__main__": + raise SystemExit(main()) From dc39a22faaccdf6c1d3759f24d2be60c1395ed82 Mon Sep 17 00:00:00 2001 From: BAF1927 Date: Mon, 17 Aug 2026 11:50:53 -0400 Subject: [PATCH 4/9] Test to fire in PR 160 evaluation tests of 10k --- .github/workflows/perf.yml | 6 +++++- benchmarks/pokec/README.md | 2 +- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/.github/workflows/perf.yml b/.github/workflows/perf.yml index 805b12a1..bfb8e89c 100644 --- a/.github/workflows/perf.yml +++ b/.github/workflows/perf.yml @@ -2,6 +2,7 @@ name: perf on: pull_request: + types: [opened, synchronize, reopened, labeled] push: branches: [main] schedule: @@ -48,10 +49,13 @@ jobs: path: pokec-2k-report.json pokec-10k: + # Nightly, manual dispatch, or a PR labeled "pokec-10k" (opt-in; not every PR). if: > github.event_name == 'schedule' || (github.event_name == 'workflow_dispatch' && - (github.event.inputs.band == '10k' || github.event.inputs.band == 'both')) + (github.event.inputs.band == '10k' || github.event.inputs.band == 'both')) || + (github.event_name == 'pull_request' && + contains(join(github.event.pull_request.labels.*.name, ','), 'pokec-10k')) runs-on: ubuntu-latest timeout-minutes: 300 steps: diff --git a/benchmarks/pokec/README.md b/benchmarks/pokec/README.md index 344a2816..1d70de64 100644 --- a/benchmarks/pokec/README.md +++ b/benchmarks/pokec/README.md @@ -70,7 +70,7 @@ banked from Actions (see below). | Job | When | Notes | |-----|------|-------| | `pokec-2k` | every PR / push to main / manual | committed fixture; 45 min timeout | -| `pokec-10k` | nightly cron + `workflow_dispatch` | downloads SNAP only on cache miss | +| `pokec-10k` | nightly + manual, or PR labeled `pokec-10k` | SNAP download only on cache miss; not on every PR | Existing `python-package-version-test.yml` / `python-publish.yml` are untouched. From 25fe35aed8b46bd58d187a6d13db5c714ce90269 Mon Sep 17 00:00:00 2001 From: BAF1927 Date: Mon, 17 Aug 2026 12:10:46 -0400 Subject: [PATCH 5/9] Enforced 10k Analysis (FOR TESTING) --- .github/workflows/perf.yml | 10 +++------- benchmarks/pokec/README.md | 2 +- 2 files changed, 4 insertions(+), 8 deletions(-) diff --git a/.github/workflows/perf.yml b/.github/workflows/perf.yml index bfb8e89c..350af42d 100644 --- a/.github/workflows/perf.yml +++ b/.github/workflows/perf.yml @@ -2,7 +2,6 @@ name: perf on: pull_request: - types: [opened, synchronize, reopened, labeled] push: branches: [main] schedule: @@ -49,13 +48,10 @@ jobs: path: pokec-2k-report.json pokec-10k: - # Nightly, manual dispatch, or a PR labeled "pokec-10k" (opt-in; not every PR). if: > - github.event_name == 'schedule' || - (github.event_name == 'workflow_dispatch' && - (github.event.inputs.band == '10k' || github.event.inputs.band == 'both')) || - (github.event_name == 'pull_request' && - contains(join(github.event.pull_request.labels.*.name, ','), 'pokec-10k')) + github.event_name != 'workflow_dispatch' || + github.event.inputs.band == '10k' || + github.event.inputs.band == 'both' runs-on: ubuntu-latest timeout-minutes: 300 steps: diff --git a/benchmarks/pokec/README.md b/benchmarks/pokec/README.md index 1d70de64..c3680cd4 100644 --- a/benchmarks/pokec/README.md +++ b/benchmarks/pokec/README.md @@ -70,7 +70,7 @@ banked from Actions (see below). | Job | When | Notes | |-----|------|-------| | `pokec-2k` | every PR / push to main / manual | committed fixture; 45 min timeout | -| `pokec-10k` | nightly + manual, or PR labeled `pokec-10k` | SNAP download only on cache miss; not on every PR | +| `pokec-10k` | every PR / push to main / nightly / manual | SNAP download only on cache miss; 300 min timeout | Existing `python-package-version-test.yml` / `python-publish.yml` are untouched. From 5f9919027d6acddd04d8acecc0a2c3c0614d0132 Mon Sep 17 00:00:00 2001 From: BAF1927 Date: Wed, 19 Aug 2026 10:05:40 -0400 Subject: [PATCH 6/9] 2k Fires Online No longer stores the pokec-2k fixtures, it now generates them in real time --- .github/workflows/perf.yml | 32 +- .gitignore | 3 +- benchmarks/pokec/README.md | 37 +- benchmarks/pokec/baselines.json | 4 +- .../pokec/fixtures/pokec-2k-customers.json | 7 - benchmarks/pokec/fixtures/pokec-2k.graphml | 60575 ---------------- benchmarks/pokec/generate_fixtures.py | 391 +- benchmarks/pokec/run_bench.py | 348 +- 8 files changed, 633 insertions(+), 60764 deletions(-) delete mode 100644 benchmarks/pokec/fixtures/pokec-2k-customers.json delete mode 100644 benchmarks/pokec/fixtures/pokec-2k.graphml diff --git a/.github/workflows/perf.yml b/.github/workflows/perf.yml index 350af42d..c6bfa17f 100644 --- a/.github/workflows/perf.yml +++ b/.github/workflows/perf.yml @@ -8,7 +8,7 @@ on: - cron: "17 6 * * *" workflow_dispatch: inputs: - band: + type: description: "2k, 10k, or both" default: "both" type: choice @@ -22,8 +22,8 @@ jobs: if: > github.event_name != 'schedule' && (github.event_name != 'workflow_dispatch' || - github.event.inputs.band == '2k' || - github.event.inputs.band == 'both') + github.event.inputs.type == '2k' || + github.event.inputs.type == 'both') runs-on: ubuntu-latest timeout-minutes: 45 steps: @@ -35,12 +35,28 @@ jobs: run: | python -m pip install --upgrade pip pip install . + - name: Restore 2k fixture + id: fixture-cache + uses: actions/cache@v4 + with: + path: benchmarks/pokec/fixtures/pokec-2k* + key: pokec-2k-fixture-${{ hashFiles('benchmarks/pokec/generate_fixtures.py') }} + - name: Generate 2k fixture (cache miss only) + if: steps.fixture-cache.outputs.cache-hit != 'true' + run: | + mkdir -p benchmarks/pokec/data + curl -sSf -o benchmarks/pokec/data/soc-pokec-relationships.txt.gz \ + https://snap.stanford.edu/data/soc-pokec-relationships.txt.gz + curl -sSf -o benchmarks/pokec/data/soc-pokec-profiles.txt.gz \ + https://snap.stanford.edu/data/soc-pokec-profiles.txt.gz + python benchmarks/pokec/generate_fixtures.py \ + --data-dir benchmarks/pokec/data --size 2k --write - name: Pokec 2k bench run: | python benchmarks/pokec/run_bench.py \ --fixture benchmarks/pokec/fixtures/pokec-2k.graphml \ --customers benchmarks/pokec/fixtures/pokec-2k-customers.json \ - --repeats 3 --band pokec-2k --out pokec-2k-report.json + --repeats 3 --type pokec-2k --out pokec-2k-report.json - uses: actions/upload-artifact@v4 if: always() with: @@ -50,8 +66,8 @@ jobs: pokec-10k: if: > github.event_name != 'workflow_dispatch' || - github.event.inputs.band == '10k' || - github.event.inputs.band == 'both' + github.event.inputs.type == '10k' || + github.event.inputs.type == 'both' runs-on: ubuntu-latest timeout-minutes: 300 steps: @@ -78,13 +94,13 @@ jobs: curl -sSf -o benchmarks/pokec/data/soc-pokec-profiles.txt.gz \ https://snap.stanford.edu/data/soc-pokec-profiles.txt.gz python benchmarks/pokec/generate_fixtures.py \ - --data-dir benchmarks/pokec/data --rungs 10k --write + --data-dir benchmarks/pokec/data --size 10k --write - name: Pokec 10k bench run: | python benchmarks/pokec/run_bench.py \ --fixture benchmarks/pokec/fixtures/pokec-10k.graphml \ --customers benchmarks/pokec/fixtures/pokec-10k-customers.json \ - --repeats 1 --band pokec-10k --out pokec-10k-report.json + --repeats 1 --type pokec-10k --out pokec-10k-report.json - uses: actions/upload-artifact@v4 if: always() with: diff --git a/.gitignore b/.gitignore index c36cd5a5..d04d1dad 100755 --- a/.gitignore +++ b/.gitignore @@ -176,7 +176,8 @@ cython_debug/ # Sphinx Documentation /docs/source/_static/css/fonts/ -# Pokec SNAP downloads (fixtures under benchmarks/pokec/fixtures/ are committed) +# Pokec SNAP dumps and generated fixtures (built in CI from SNAP; do not commit) benchmarks/pokec/data/ +benchmarks/pokec/fixtures/pokec-2k* benchmarks/pokec/fixtures/pokec-10k* *-report.json diff --git a/benchmarks/pokec/README.md b/benchmarks/pokec/README.md index c3680cd4..32ac2a53 100644 --- a/benchmarks/pokec/README.md +++ b/benchmarks/pokec/README.md @@ -11,8 +11,8 @@ no self-hosted runners. | `generate_fixtures.py` | Deterministic fixture builder from SNAP dumps | | `run_bench.py` | Fresh-process runner; times import / setup / reason | | `baselines.json` | Banked `relevance_rows` + `reason_s_max` thresholds | -| `fixtures/pokec-2k.*` | Committed per-PR fixture (~1.6 MB GraphML) | -| `fixtures/pokec-10k.*` | Generated in nightly CI; **not** committed | +| `fixtures/pokec-2k.*` | Generated in CI on cache miss; **not** committed | +| `fixtures/pokec-10k.*` | Generated in CI on cache miss; **not** committed | | `data/` | Local SNAP downloads; gitignored | ## Dataset (do not commit) @@ -28,15 +28,15 @@ Integrity (gunzip line counts): relationships **30,622,564**; profiles **1,632,8 ```bash python benchmarks/pokec/generate_fixtures.py \ - --data-dir benchmarks/pokec/data --rungs 2k --write + --data-dir benchmarks/pokec/data --size 2k --write python benchmarks/pokec/generate_fixtures.py \ - --data-dir benchmarks/pokec/data --rungs 10k --write + --data-dir benchmarks/pokec/data --size 10k --write ``` Spec (must match exactly for the verified 10k cross-check): -- Rung = N smallest profile user ids; keep edges with both ends kept. +- Size = N smallest profile user ids; keep edges with both ends kept. - `hasPet` from Slovak `pets` text (column 13) via the fixed stem→token map. - Customers: paper proportion `2308/1632803`, every k-th sorted owner. - GraphML: users then pet tokens; friend edges in SNAP order; hasPet by owner. @@ -48,11 +48,11 @@ generator (`18,315` / `1,203` / `5`). ## Running the bench ```bash -# Per-PR band (3 fresh-process repeats, median) +# Per-PR type (3 fresh-process repeats, median) python benchmarks/pokec/run_bench.py \ --fixture benchmarks/pokec/fixtures/pokec-2k.graphml \ --customers benchmarks/pokec/fixtures/pokec-2k-customers.json \ - --repeats 3 --band pokec-2k --out pokec-2k-report.json + --repeats 3 --type pokec-2k --out pokec-2k-report.json ``` Timed windows: `import_s`, `setup_s`, `reason_s`. Thresholds apply to @@ -61,29 +61,32 @@ Timed windows: `import_s`, `setup_s`, `reason_s`. Thresholds apply to untimed warmup so Numba compilation stays out of measured windows. `PYTHONHASHSEED=0` on every child. -Verified **10k** `relevance_rows` on current-main / PR #160 semantics: **8006**. -Banked **2k** `relevance_rows`: **1573**. `reason_s_max` stays `null` until -banked from Actions (see below). +Banked on `ubuntu-latest` (3 Actions medians per type; cap = 2× worst median): + +| Type | `relevance_rows` | `reason_s_max` | +|------|------------------|----------------| +| 2k | **1573** | **20.6428** s | +| 10k | **8006** | **154.8286** s | ## CI (`.github/workflows/perf.yml`) | Job | When | Notes | |-----|------|-------| -| `pokec-2k` | every PR / push to main / manual | committed fixture; 45 min timeout | +| `pokec-2k` | every PR / push to main / manual | SNAP download only on cache miss; 45 min timeout | | `pokec-10k` | every PR / push to main / nightly / manual | SNAP download only on cache miss; 300 min timeout | Existing `python-package-version-test.yml` / `python-publish.yml` are untouched. ## Re-banking baselines -Re-banking is a **deliberate, reviewed** edit to `baselines.json` — never -automatic. +Caps above are already banked in `baselines.json`. Re-banking is a +**deliberate, reviewed** edit — never automatic. -1. Run the band 3× on Actions (`workflow_dispatch`), collect median `reason_s` - from each report artifact. +1. Run the type 3× on Actions, collect median `reason_s` from each report. 2. Take the **worst** median, multiply by **2.0**, set `reason_s_max`. -3. Set `relevance_rows` to the observed count (must be identical across runs). -4. Open a PR whose description cites the three report artifacts. +3. `relevance_rows` must stay identical across those runs; change it only if + the count is stable and the semantics change is intentional. +4. Cite the three report artifacts in the PR that edits `baselines.json`. `relevance_rows` mismatches are hard failures. `reason_s` over threshold fails with a message to re-run once before investigating (hosted-runner noise diff --git a/benchmarks/pokec/baselines.json b/benchmarks/pokec/baselines.json index 5d93b7c9..c0c25288 100644 --- a/benchmarks/pokec/baselines.json +++ b/benchmarks/pokec/baselines.json @@ -1,11 +1,11 @@ { "runner": "ubuntu-latest", "pokec-2k": { - "reason_s_max": null, + "reason_s_max": 20.6428, "relevance_rows": 1573 }, "pokec-10k": { - "reason_s_max": null, + "reason_s_max": 154.8286, "relevance_rows": 8006 } } diff --git a/benchmarks/pokec/fixtures/pokec-2k-customers.json b/benchmarks/pokec/fixtures/pokec-2k-customers.json deleted file mode 100644 index 7da15f04..00000000 --- a/benchmarks/pokec/fixtures/pokec-2k-customers.json +++ /dev/null @@ -1,7 +0,0 @@ -[ - 1, - 412, - 789, - 1168, - 1566 -] diff --git a/benchmarks/pokec/fixtures/pokec-2k.graphml b/benchmarks/pokec/fixtures/pokec-2k.graphml deleted file mode 100644 index d3eff45b..00000000 --- a/benchmarks/pokec/fixtures/pokec-2k.graphml +++ /dev/null @@ -1,60575 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - 1 - - - diff --git a/benchmarks/pokec/generate_fixtures.py b/benchmarks/pokec/generate_fixtures.py index 2ae7bd74..4060877d 100644 --- a/benchmarks/pokec/generate_fixtures.py +++ b/benchmarks/pokec/generate_fixtures.py @@ -8,10 +8,10 @@ Usage (from repo root):: python benchmarks/pokec/generate_fixtures.py \\ - --data-dir benchmarks/pokec/data --rungs 2k --write + --data-dir benchmarks/pokec/data --size 2k --write python benchmarks/pokec/generate_fixtures.py \\ - --data-dir benchmarks/pokec/data --rungs 10k --write + --data-dir benchmarks/pokec/data --size 10k --write """ from __future__ import annotations @@ -62,7 +62,7 @@ ("ryb", "fish"), ) -RUNG_N = { +SIZE_N = { "2k": 2_000, "10k": 10_000, } @@ -84,7 +84,7 @@ }, } - +# Convert a user's free-text pets field into sorted, normalized pet tokens. def _pets_from_text(text: str) -> list[str]: if not text or text.lower() == "null": return [] @@ -95,121 +95,214 @@ def _pets_from_text(text: str) -> list[str]: found.add(token) return sorted(found) - + # Calculate the proportion of customers used in the original Pokec experiment. def _pick_customers(owners: list[int], n_users: int) -> list[int]: proportion = CUSTOMER_NUMER / CUSTOMER_DENOM + # Calculate how many customers this fixture should have based on its number of users. + # Always select at least 5 customers. target = max(5, round(proportion * n_users)) + # We can never select more customers than the number of available pet owners. target = min(target, len(owners)) + # If there are no available pet owners, there are no customers to select. if target == 0: return [] + # Calculate how far apart customer selections should be in the sorted owners list. step = len(owners) / target + # Select 'target' customers evenly across the owners list. return [owners[int(i * step)] for i in range(target)] - +# Open a text file normally or through gzip depending on its extension. def _open_maybe_gzip(path: Path): if str(path).endswith(".gz"): return gzip.open(path, "rt", encoding="utf-8", errors="replace") return open(path, "r", encoding="utf-8", errors="replace") -def load_profiles(profiles_path: Path, max_id: int | None = None) -> tuple[list[int], dict[int, list[str]], int]: - """Return (sorted user_ids, pets_by_id for kept ids, line_count). - - If max_id is set, only profiles with user_id <= max_id are kept in pets_by_id; - all ids are still collected for sorting/selection (caller filters by N). - """ +def load_profiles( + profiles_path: Path, + max_id: int | None = None +) -> tuple[list[int], dict[int, list[str]], int]: + # Store every valid Pokec user ID found in the profiles file. user_ids: list[int] = [] + # Map users with recognized pets to their normalized pet categories. + # Example: {412: ["cat", "dog"], 789: ["fish"]} pets_by_id: dict[int, list[str]] = {} - lines = 0 + # Count every line read so we can later verify that the full SNAP file was used. + line_count = 0 + # Open the SNAP profiles file, supporting either .txt or .txt.gz. with _open_maybe_gzip(profiles_path) as fh: - for raw in fh: - lines += 1 - # SNAP profiles may start with comment lines. - if raw.startswith("#"): + # Process one Pokec user profile at a time. + for line in fh: + # Count the raw profile line for SNAP dataset integrity verification. + line_count += 1 + # Remove the newline and split the tab-separated profile into columns. + parts = line.rstrip("\n").split("\t") + # Skip malformed rows that do not contain a user ID. + if not parts or not parts[0]: + continue + try: + # Column 0 of the SNAP profile contains the user's numeric ID. + uid = int(parts[0]) + except ValueError: + # Skip the row if its user ID cannot be converted to an integer. continue - parts = raw.rstrip("\n").split("\t") - if not parts or parts[0] == "": + # Optionally ignore users whose IDs are above the requested maximum. + if max_id is not None and uid > max_id: continue - uid = int(parts[0]) + # Save this valid user ID as part of the available Pokec population. user_ids.append(uid) + # Column 13 contains the user's free-text pets information. + # Use an empty string if the row does not contain that column. pets_text = parts[13] if len(parts) > 13 else "" - if max_id is None or uid <= max_id: - pets = _pets_from_text(pets_text) - if pets: - pets_by_id[uid] = pets - return user_ids, pets_by_id, lines - - -def load_friend_edges(rel_path: Path, kept: set[int]) -> tuple[list[tuple[int, int]], int]: + # Convert the raw pets text into normalized categories such as + # "dog", "cat", "fish", etc. + pets = _pets_from_text(pets_text) + # Only users with at least one recognized pet are stored as pet owners. + if pets: + pets_by_id[uid] = pets + # Return: + # 1. every valid user ID, + # 2. pet ownership information for users with recognized pets, + # 3. total number of raw profile lines read. + return user_ids, pets_by_id, line_count + +def load_friend_edges( + rel_path: Path, + kept: set[int] +) -> tuple[list[tuple[int, int]], int]: + """Read Pokec relationships and keep only edges between selected fixture users.""" + # Store the friendship edges where both users belong to our selected fixture. + # Example: [(1, 412), (412, 789)] edges: list[tuple[int, int]] = [] + # Count every raw line in the SNAP relationships file for integrity verification. lines = 0 + # Open the SNAP relationships file, supporting either .txt or .txt.gz. with _open_maybe_gzip(rel_path) as fh: + # Process each relationship line in the original SNAP dataset. for raw in fh: + # Count every raw line so we can verify the complete SNAP file was read. lines += 1 + # Ignore comment/header lines because they do not represent relationships. if raw.startswith("#"): continue + # Split the line into its whitespace-separated values. + # The first two values represent the source and destination user IDs. parts = raw.split() + # Skip malformed lines that do not contain both user IDs. if len(parts) < 2: continue + # Convert the source and destination user IDs from strings to integers. src, dst = int(parts[0]), int(parts[1]) + # Only keep the friendship if BOTH users are part of our selected + # 2k or 10k fixture. if src in kept and dst in kept: edges.append((src, dst)) + # Return: + # 1. all friendship edges contained within our selected fixture, + # 2. the total number of raw relationship lines read. return edges, lines -def build_rung( +def build_size( profiles_path: Path, relationships_path: Path, n: int, verify_snap_counts: bool = True, ) -> dict: - # First pass: collect all ids, sort, take N smallest — then we know the - # id cutoff so a second pet-filter pass is unnecessary if we load pets for - # all profiles. Profiles is large; we load once and filter. + """Build one deterministic Pokec benchmark fixture containing n users.""" + # Read the entire SNAP profiles file once. + # Returns all user IDs, pet information for users with recognized pets, + # and the total number of profile lines read. print(f" reading profiles: {profiles_path}", file=sys.stderr) - all_ids, pets_all, profile_lines = load_profiles(profiles_path, max_id=None) + all_ids, pets_all, profile_lines = load_profiles( + profiles_path, + max_id=None + ) + # If SNAP verification is enabled, make sure we read the expected + # number of rows from the original profiles dataset. if verify_snap_counts and profile_lines != EXPECTED_PROFILE_LINES: raise SystemExit( f"profiles line count {profile_lines} != expected {EXPECTED_PROFILE_LINES}" ) - + # Remove duplicate user IDs and sort them in ascending order. + # Sorting makes the user selection deterministic. all_ids_sorted = sorted(set(all_ids)) + # Make sure the SNAP dataset contains enough unique users + # to construct the requested fixture size. if len(all_ids_sorted) < n: raise SystemExit(f"only {len(all_ids_sorted)} unique users; need {n}") + # Select the N smallest user IDs for this fixture. + # Example: n=10_000 selects the first 10,000 sorted Pokec user IDs. kept_ids = all_ids_sorted[:n] + # Convert the selected IDs to a set for fast membership checks. + # This is used when filtering profiles and friendship edges. kept = set(kept_ids) + # Store the largest selected user ID. + # This is currently used for the progress/debug message below. max_kept = kept_ids[-1] - - pets_by_id = {uid: pets for uid, pets in pets_all.items() if uid in kept} - # Owners: kept users with ≥1 pet, sorted ascending. + # Keep pet information only for users included in this fixture. + # Example: if user 50,000 is not in a 2k fixture, discard their pet data. + pets_by_id = { + uid: pets + for uid, pets in pets_all.items() + if uid in kept + } + # Get the selected users who have at least one recognized pet. + # Sorting keeps customer selection and GraphML generation deterministic. owners = sorted(pets_by_id.keys()) + # Choose the initial customer/relevance seed users from the pet owners. + # The number of customers is based on the original paper's proportion. customers = _pick_customers(owners, n) - - # Pet token universe for this rung. + # Collect every unique pet category that appears in this fixture. + # These will later become pet nodes in the GraphML graph. pet_tokens: set[str] = set() + # Add each user's normalized pets to the set of pet categories. for pets in pets_by_id.values(): pet_tokens.update(pets) + # Sort the pet categories so their output order is deterministic. + # Example: ["bird", "cat", "dog", "fish", ...] pet_tokens_sorted = sorted(pet_tokens) - - print(f" reading relationships (kept ≤ id {max_kept}): {relationships_path}", file=sys.stderr) - friend_edges, rel_lines = load_friend_edges(relationships_path, kept) + # Read the original SNAP relationships file and keep only friendships + # where both users belong to this fixture. + print( + f" reading relationships (kept ≤ id {max_kept}): {relationships_path}", + file=sys.stderr + ) + friend_edges, rel_lines = load_friend_edges( + relationships_path, + kept + ) + # If SNAP verification is enabled, make sure the complete original + # relationships dataset contained the expected number of lines. if verify_snap_counts and rel_lines != EXPECTED_RELATIONSHIP_LINES: raise SystemExit( f"relationships line count {rel_lines} != expected {EXPECTED_RELATIONSHIP_LINES}" ) - + # Store the graph edges connecting users to the pets they own. + # Example: (412, "dog") represents u412 --hasPet--> dog. haspet_edges: list[tuple[int, str]] = [] - for uid in owners: # ascending owner id - for token in pets_by_id[uid]: # already sorted + # Process pet owners in ascending user-ID order. + for uid in owners: + # Each user's pet list is already sorted. + for token in pets_by_id[uid]: + # Create one hasPet edge for this user/pet combination. haspet_edges.append((uid, token)) - + # Return all information needed to write and validate the fixture. return { + # Requested fixture population size. "n": n, + # The actual user IDs included in the fixture. "kept_ids": kept_ids, + # Friendship relationships between selected users. "friend_edges": friend_edges, + # User-to-pet relationships. "haspet_edges": haspet_edges, + # Unique pet categories that need to exist as graph nodes. "pet_tokens": pet_tokens_sorted, + # Users that begin as the customer/relevance seeds. "customers": customers, + # Summary statistics used to validate that fixture generation + # still matches the banked benchmark specification. "counts": { "users": len(kept_ids), "friend_edges": len(friend_edges), @@ -220,138 +313,268 @@ def build_rung( } -def write_graphml(path: Path, rung: dict) -> None: - """Write deterministic GraphML: users asc, pets sorted; friends SNAP order; hasPet owner asc.""" +def write_graphml(path: Path, fixture: dict) -> None: + """Write the generated Pokec fixture to a deterministic GraphML file.""" + # Make sure the directory where the GraphML file will be saved exists. + # parents=True creates any missing parent directories. + # exist_ok=True prevents an error if the directory already exists. path.parent.mkdir(parents=True, exist_ok=True) + # Create a short alias for the XML escaping function. + # This makes strings safe to place inside XML. + # Example: "cats & dogs" becomes "cats & dogs". esc = saxutils.escape + # Open the output GraphML file for writing as UTF-8 text. + # newline="\n" ensures consistent line endings across operating systems. with open(path, "w", encoding="utf-8", newline="\n") as fh: + # Write the standard XML declaration at the top of the file. fh.write("\n") + # Start the GraphML document and declare the standard GraphML XML namespaces. fh.write( '\n' ) - fh.write(' \n') - fh.write(' \n') + # Define "friend" as an edge attribute. + # PyReason will later recognize edges carrying this attribute as friend relations. + fh.write( + ' \n' + ) + # Define "hasPet" as another edge attribute. + # These edges connect users to their normalized pet-category nodes. + fh.write( + ' \n' + ) + # Start the actual graph. + # edgedefault="directed" means every edge has a source and a target direction. fh.write(' \n') - for uid in rung["kept_ids"]: + # Write one graph node for every selected Pokec user. + # User IDs are prefixed with "u" to distinguish users from pet nodes. + # Example: user 412 becomes . + for uid in fixture["kept_ids"]: fh.write(f' \n') - for token in rung["pet_tokens"]: + # Write one graph node for every unique pet category in the fixture. + # Example: "dog" becomes . + # esc() protects the token in case it contains XML-special characters. + for token in fixture["pet_tokens"]: fh.write(f' \n') - for src, dst in rung["friend_edges"]: - fh.write(f' \n') + # Write every friendship relationship between selected Pokec users. + for src, dst in fixture["friend_edges"]: + # Create the directed edge from the source user to the destination user. + # Example: (12, 50) becomes u12 -> u50. + fh.write( + f' \n' + ) + # Mark this edge as a "friend" relationship with value 1. fh.write(' 1\n') + # Close this friendship edge. fh.write(" \n") - for uid, token in rung["haspet_edges"]: - fh.write(f' \n') + # Write every relationship between a user and a pet category they own. + for uid, token in fixture["haspet_edges"]: + # Create a directed edge from the user to the pet node. + # Example: (412, "dog") becomes u412 -> dog. + fh.write( + f' \n' + ) + # Mark this edge as a "hasPet" relationship with value 1. fh.write(' 1\n') + # Close this hasPet edge. fh.write(" \n") + # Close the graph itself. fh.write(" \n") + # Close the GraphML document. fh.write("\n") - +#Just writes the array of the customers to a JSON file. def write_customers(path: Path, customers: list[int]) -> None: path.parent.mkdir(parents=True, exist_ok=True) path.write_text(json.dumps(customers, indent=2) + "\n", encoding="utf-8") -def assert_counts(rung_name: str, counts: dict) -> None: - expected = EXPECTED_COUNTS.get(rung_name) +def assert_counts(size_name: str, counts: dict) -> None: + """Verify that the generated fixture counts match the banked expected counts.""" + # Get the expected counts for this fixture size from EXPECTED_COUNTS. + # Example: size_name="10k" gets the expected users, friendships, + # hasPet edges, and customer count for the 10k fixture. + expected = EXPECTED_COUNTS.get(size_name) + # If there are no expected counts stored for this size, + # there is nothing to validate, so exit the function. if expected is None: return + # Check each important property of the generated fixture. for key in ("users", "friend_edges", "haspet_edges", "customers"): + # Get the previously verified/banked expected value for this property. + # Example: for 10k and "friend_edges", banked = 121_716. banked = expected.get(key) + # If this particular property does not have a banked expected value, + # skip its validation. if banked is None: continue + # Compare the newly generated count against the verified expected count. if counts[key] != banked: + # Stop fixture generation immediately if the counts differ. + # A mismatch means the generated benchmark is no longer identical + # to the benchmark specification we previously verified. raise SystemExit( - f"{rung_name} {key}={counts[key]} != banked {banked} — " + f"{size_name} {key}={counts[key]} != banked {banked} — " "fixture generation diverged from the verified spec" ) def _parse_args(): + """Define and parse the command-line options for the fixture generator.""" + # Create the command-line argument parser. + # description=__doc__ uses the file's top-level docstring as the + # description shown when running the script with --help. p = argparse.ArgumentParser(description=__doc__) + # Define where the original downloaded SNAP Pokec data is located. + # The value is converted into a Path object automatically. + # If --data-dir is not provided, use benchmarks/pokec/data. p.add_argument( "--data-dir", type=Path, default=Path("benchmarks/pokec/data"), help="Directory with soc-pokec-*.txt.gz", ) + # Define where the generated benchmark fixture files should be saved. + # This directory will contain the GraphML graph and customers JSON. + # If --out-dir is not provided, use benchmarks/pokec/fixtures. p.add_argument( "--out-dir", type=Path, default=Path("benchmarks/pokec/fixtures"), help="Where to write GraphML + customers JSON", ) + # Define which fixture size or sizes should be generated. + # nargs="+" allows the user to provide one or more sizes. + # choices restricts the values to the sizes defined in SIZE_N. + # If no --size is provided, generate only the 2k fixture. p.add_argument( - "--rungs", + "--size", nargs="+", - choices=sorted(RUNG_N.keys()), + choices=sorted(SIZE_N.keys()), default=["2k"], - help="Which fixture rungs to build", + help="Which fixture size(s) to build (2k, 10k)", ) + # Add an optional --write flag. + # If --write is present, save the generated GraphML and customers JSON. + # If it is absent, build/validate the fixture without writing those files. p.add_argument( "--write", action="store_true", help="Write GraphML + customers JSON (otherwise only print counts)", ) + # Add an optional debugging flag that disables the exact SNAP + # source-file line-count verification. + # By default, SNAP verification remains enabled. p.add_argument( "--skip-snap-verify", action="store_true", help="Skip exact SNAP line-count checks (debug only)", ) + # Read the arguments supplied in the terminal and return them + # as an argparse Namespace object. return p.parse_args() def main() -> int: + """Run the complete Pokec fixture generation and validation process.""" + # Read the command-line arguments provided by the user. + # This gives us the data directory, output directory, requested sizes, + # whether to write files, and whether SNAP verification should be skipped. args = _parse_args() + # Build the expected path to the compressed SNAP profiles file. profiles = args.data_dir / "soc-pokec-profiles.txt.gz" + # Build the expected path to the compressed SNAP relationships file. relationships = args.data_dir / "soc-pokec-relationships.txt.gz" + # If the compressed profiles file does not exist, + # try using the uncompressed .txt version instead. if not profiles.exists(): - # Allow uncompressed fallback. profiles = args.data_dir / "soc-pokec-profiles.txt" + # If the compressed relationships file does not exist, + # try using the uncompressed .txt version instead. if not relationships.exists(): relationships = args.data_dir / "soc-pokec-relationships.txt" + # After checking both compressed and uncompressed versions, + # stop if either required SNAP source file still cannot be found. if not profiles.exists() or not relationships.exists(): raise SystemExit( f"SNAP files not found under {args.data_dir}. " "Download soc-pokec-profiles.txt.gz and " "soc-pokec-relationships.txt.gz from SNAP." ) - - for rung_name in args.rungs: - n = RUNG_N[rung_name] - print(f"=== building {rung_name} (N={n}) ===", file=sys.stderr) - rung = build_rung( + # Build each fixture size requested through --size. + # Example: --size 2k 10k causes this loop to run twice. + for size_name in args.size: + # Convert the size name into its actual number of users. + # Example: "2k" -> 2,000 and "10k" -> 10,000. + n = SIZE_N[size_name] + # Print which fixture is currently being generated. + print(f"=== building {size_name} (N={n}) ===", file=sys.stderr) + # Build the complete fixture in memory from the SNAP profiles + # and relationships files. + fixture = build_size( profiles, relationships, n, + # SNAP integrity verification is enabled by default. + # It is disabled only if --skip-snap-verify was provided. verify_snap_counts=not args.skip_snap_verify, ) - counts = rung["counts"] - print(json.dumps({"rung": rung_name, **counts}, indent=2)) - assert_counts(rung_name, counts) - - # On first 2k generation, print the values to bank into EXPECTED_COUNTS. - banked = EXPECTED_COUNTS.get(rung_name, {}) - if any(banked.get(k) is None for k in ("friend_edges", "haspet_edges", "customers")): + # Extract the summary counts produced by build_size(). + # These include users, friendship edges, hasPet edges, + # customers, and pet tokens. + counts = fixture["counts"] + # Print the generated fixture counts in readable JSON format. + print(json.dumps({"size": size_name, **counts}, indent=2)) + # Compare the newly generated counts against the previously + # verified values stored in EXPECTED_COUNTS. + assert_counts(size_name, counts) + # Get the banked expected counts for this fixture size. + # If the size has no entry yet, use an empty dictionary. + banked = EXPECTED_COUNTS.get(size_name, {}) + # Check whether any important expected count has not yet been banked. + # This is useful when generating a new fixture size for the first time. + if any( + banked.get(k) is None + for k in ("friend_edges", "haspet_edges", "customers") + ): + # Print the newly generated values so they can be manually + # reviewed and added to EXPECTED_COUNTS as reference values. print( - f"NOTE: bank these into EXPECTED_COUNTS[{rung_name!r}]: " + f"NOTE: bank these into EXPECTED_COUNTS[{size_name!r}]: " f"friend_edges={counts['friend_edges']}, " f"haspet_edges={counts['haspet_edges']}, " f"customers={counts['customers']}", file=sys.stderr, ) - + # Only create the actual fixture files if --write was provided. if args.write: - graphml = args.out_dir / f"pokec-{rung_name}.graphml" - customers_path = args.out_dir / f"pokec-{rung_name}-customers.json" - write_graphml(graphml, rung) - write_customers(customers_path, rung["customers"]) - print(f"wrote {graphml} and {customers_path}", file=sys.stderr) - + # Build the output path for the GraphML graph. + # Example: benchmarks/pokec/fixtures/pokec-10k.graphml + graphml = args.out_dir / f"pokec-{size_name}.graphml" + # Build the output path for the customer seed JSON. + # Example: benchmarks/pokec/fixtures/pokec-10k-customers.json + customers_path = ( + args.out_dir / f"pokec-{size_name}-customers.json" + ) + # Write the users, pets, friendship edges, and hasPet edges + # from the fixture into the GraphML file. + write_graphml(graphml, fixture) + # Write the selected customer/relevance seed IDs + # into their separate JSON file. + write_customers( + customers_path, + fixture["customers"] + ) + # Confirm which files were successfully written. + print( + f"wrote {graphml} and {customers_path}", + file=sys.stderr + ) + # Return 0 to indicate that fixture generation completed successfully. return 0 diff --git a/benchmarks/pokec/run_bench.py b/benchmarks/pokec/run_bench.py index 8f4c8690..b43c0b85 100644 --- a/benchmarks/pokec/run_bench.py +++ b/benchmarks/pokec/run_bench.py @@ -9,7 +9,7 @@ python benchmarks/pokec/run_bench.py \\ --fixture benchmarks/pokec/fixtures/pokec-2k.graphml \\ --customers benchmarks/pokec/fixtures/pokec-2k-customers.json \\ - --repeats 3 --band pokec-2k --out pokec-2k-report.json + --repeats 3 --type pokec-2k --out pokec-2k-report.json Child mode is internal (``--child``); do not invoke directly from CI. """ @@ -30,45 +30,107 @@ def _parse_args(argv=None): + """Define and parse the command-line options for the Pokec benchmark runner.""" + # Create the command-line argument parser. + # The script's top-level docstring is used as the --help description. p = argparse.ArgumentParser(description=__doc__) - p.add_argument("--fixture", type=Path, required=True) - p.add_argument("--customers", type=Path, required=True) - p.add_argument("--repeats", type=int, default=3) - p.add_argument("--band", choices=("pokec-2k", "pokec-10k"), required=True) - p.add_argument("--out", type=Path, default=Path("pokec-report.json")) - p.add_argument("--baselines", type=Path, default=DEFAULT_BASELINES) + # Path to the GraphML fixture that PyReason will load and reason over. + # This argument is required. + p.add_argument( + "--fixture", + type=Path, + required=True + ) + # Path to the JSON file containing the initial customer user IDs. + # These users receive the initial relevance facts. + # This argument is required. + p.add_argument( + "--customers", + type=Path, + required=True + ) + # Number of independent timed benchmark runs to perform. + # By default, run the benchmark 3 times. + p.add_argument( + "--repeats", + type=int, + default=3 + ) + # Name of the benchmark size being tested. + # Only the 2k and 10k Pokec benchmark types are allowed. + # This determines which baseline values are used later for validation. + p.add_argument( + "--type", + choices=("pokec-2k", "pokec-10k"), + required=True + ) + # Path where the final benchmark report JSON should be written. + # If not specified, write pokec-report.json in the current directory. + p.add_argument( + "--out", + type=Path, + default=Path("pokec-report.json") + ) + # Path to the JSON file containing the expected semantic and + # performance baseline values for each benchmark type. + # By default, use benchmarks/pokec/baselines.json. + p.add_argument( + "--baselines", + type=Path, + default=DEFAULT_BASELINES + ) + # Internal flag used when the parent benchmark process launches + # a fresh child process to perform one individual measurement. + # Users/CI normally should not invoke --child directly. p.add_argument( "--child", action="store_true", help="Run one measurement in this process and print JSON to stdout", ) + # Optional debugging flag that prevents the parent from running + # the initial untimed warmup process. p.add_argument( "--skip-warmup", action="store_true", help="Skip the untimed warmup child (debug only)", ) + # Parse the supplied arguments and return them as an argparse Namespace. return p.parse_args(argv) def _run_program(fixture: Path, customers_path: Path) -> dict: - """Execute the paper program once; return timed windows + relevance_rows.""" - customers = json.loads(customers_path.read_text(encoding="utf-8")) - + """Run one complete Pokec reasoning benchmark and return timing + correctness data.""" + # Read the customer seed IDs from the JSON file. + # Example: [1, 412, 789, 1168, 1566] + customers = json.loads( + customers_path.read_text(encoding="utf-8") + ) + # Start timing how long importing PyReason takes. t_import0 = time.perf_counter() - import pyreason as pr # noqa: WPS433 — timed deliberately - + # Import PyReason inside the timed section so import cost can be reported separately. + import pyreason as pr + # Calculate total PyReason import time. import_s = time.perf_counter() - t_import0 - + # Start timing benchmark setup: + # graph loading, rule creation, and initial customer facts. t_setup0 = time.perf_counter() + # Disable verbose PyReason logging so console output does not interfere with the benchmark. pr.settings.verbose = False - # filter_and_sort_nodes needs store_interpretation_changes (default True). + # Load the generated Pokec GraphML fixture into PyReason. + # This contains the selected users, friendship edges, and hasPet edges. pr.load_graphml(str(fixture)) + # Add rule 1: + # If y is fully relevant [1,1] and x is a friend of y, + # then x becomes partially relevant [0.6,1] one timestep later. pr.add_rule( pr.Rule( "relevance(x) : [0.6,1] <-1 relevance(y):[1,1], friend(x,y):[1,1]", "relevance_friend_rule", ) ) + # Add rule 2: + # If y is fully relevant, x is y's friend, and x and y share a pet, + # then x becomes fully relevant [1,1] one timestep later. pr.add_rule( pr.Rule( "relevance(x) : [1,1] <-1 relevance(y):[1,1], friend(x,y):[1,1], " @@ -76,25 +138,54 @@ def _run_program(fixture: Path, customers_path: Path) -> dict: "relevance_same_pet_rule", ) ) + # Add the selected customers as initial relevance facts. + # Every customer starts fully relevant from timestep 0 through timestep 8. for i, uid in enumerate(customers): - pr.add_fact(pr.Fact(f"relevance(u{uid})", f"customer_{i}", 0, 8)) + pr.add_fact( + pr.Fact( + f"relevance(u{uid})", + f"customer_{i}", + 0, + 8, + ) + ) + # Record how long benchmark setup took. setup_s = time.perf_counter() - t_setup0 - + # Start timing only the reasoning engine. + # This is the main performance number used for regression detection. t_reason0 = time.perf_counter() + # Run PyReason for 8 timesteps and store the resulting interpretation. interpretation = pr.reason(timesteps=8) + # Record the total reasoning runtime. reason_s = time.perf_counter() - t_reason0 - - df_list = pr.filter_and_sort_nodes(interpretation, ["relevance"]) + # Extract the relevance results from the interpretation for each timestep. + df_list = pr.filter_and_sort_nodes( + interpretation, + ["relevance"] + ) + # Take the final timestep's relevance table. + # If no result tables exist, use None. final_df = df_list[-1] if df_list else None - relevance_rows = 0 if final_df is None else int(len(final_df)) - + # Count how many nodes have a relevance result at the final timestep. + # This is used as a semantic correctness check. + relevance_rows = ( + 0 + if final_df is None + else int(len(final_df)) + ) + # Try to record the installed PyReason version for the benchmark report. try: import pyreason as _pr_mod - - pyreason_version = getattr(_pr_mod, "__version__", "unknown") - except Exception: # noqa: BLE001 + pyreason_version = getattr( + _pr_mod, + "__version__", + "unknown", + ) + # If version detection fails for any reason, continue the benchmark + # and report the version as unknown instead of failing. + except Exception: pyreason_version = "unknown" - + # Return all measurements and identifying information for this run. return { "import_s": import_s, "setup_s": setup_s, @@ -106,152 +197,270 @@ def _run_program(fixture: Path, customers_path: Path) -> dict: def _spawn_child(args, warmup: bool = False) -> dict: + """Launch one fresh benchmark subprocess and return its JSON result.""" + # Build the exact terminal command that the child Python process will run. cmd = [ + # Use the same Python executable that is running the parent process. sys.executable, + # Run this same run_bench.py file again. str(Path(__file__).resolve()), + # Tell the new process that it is a child measurement, + # not the main parent/controller process. "--child", + # Pass the GraphML fixture path to the child. "--fixture", str(args.fixture), + # Pass the customer seed JSON path to the child. "--customers", str(args.customers), - "--band", - args.band, + # Pass which benchmark type/size is being tested. + "--type", + args.type, + # A child performs exactly one measurement. "--repeats", "1", + # The child does not need to write a report file. + # Its result will be returned to the parent through stdout instead. "--out", os.devnull, ] + # Copy the parent's environment variables so the child starts + # with the same general execution environment. env = os.environ.copy() + # Fix Python's hash randomization seed so each child process + # uses the same hash behavior. env["PYTHONHASHSEED"] = "0" - # Ensure repo root is importable when running from a checkout. + # Find the root directory of the PyReason repository. + # run_bench.py is under benchmarks/pokec/, so parents[2] + # moves back up to the repository root. repo_root = Path(__file__).resolve().parents[2] + # Add the repository root to PYTHONPATH so the child process + # can import the PyReason code from the current checkout. env["PYTHONPATH"] = os.pathsep.join( [str(repo_root), env.get("PYTHONPATH", "")] ).rstrip(os.pathsep) + # Label the child as either a warmup run or a timed run + # for readable console output. label = "warmup" if warmup else "timed" + # Print what kind of child process is about to start. + # flush=True forces the message to appear immediately. print(f" spawning {label} child …", flush=True) + # Launch the child process and wait for it to finish. proc = subprocess.run( cmd, + # Do not automatically raise an exception on nonzero exit; + # handle failure manually below so stderr/stdout can be shown. check=False, + # Capture the child's stdout and stderr instead of printing + # them directly to the parent's terminal. capture_output=True, + # Return stdout/stderr as normal strings instead of bytes. text=True, + # Run the child using the environment configured above. env=env, ) + # If the child process failed, print its captured output + # and stop the parent benchmark with an error. if proc.returncode != 0: sys.stderr.write(proc.stderr or "") sys.stderr.write(proc.stdout or "") - raise SystemExit(f"child failed with exit {proc.returncode}") - # Child prints a single JSON object on stdout (may have trailing noise). + raise SystemExit( + f"child failed with exit {proc.returncode}" + ) + # The child prints its result as JSON to stdout. + # Take the final output line in case PyReason printed extra text first. line = proc.stdout.strip().splitlines()[-1] + # Convert the JSON string back into a Python dictionary + # and return the child's benchmark result to the parent. return json.loads(line) - def _median(xs): + # Return the median value of the list as a float. + # If the list is empty, return None instead. return float(statistics.median(xs)) if xs else None -def _load_baselines(path: Path) -> dict: - if not path.exists(): - raise SystemExit(f"baselines file not found: {path}") - return json.loads(path.read_text(encoding="utf-8")) - - -def _evaluate(band: str, report: dict, baselines: dict) -> list[str]: - """Return list of failure messages (empty ⇒ pass).""" +def _evaluate(type_name: str, report: dict, baselines: dict) -> list[str]: + """Compare benchmark results against expected baselines and return any failures.""" + # Store any correctness or performance failures found during evaluation. + # If this list stays empty, the benchmark passes. failures: list[str] = [] - bank = baselines.get(band) or {} + # Get the saved baseline values for this benchmark type. + # Example: "pokec-2k" -> its expected relevance_rows and reason_s_max. + # If the type does not exist in baselines, use an empty dictionary. + bank = baselines.get(type_name) or {} + # Get the expected number of final relevance rows from the baseline. expected_rows = bank.get("relevance_rows") + # Get the median relevance-row count observed in the current benchmark runs. observed_rows = report["medians"]["relevance_rows"] + # If no expected relevance count has been saved yet, + # do not fail. Add a note saying this value still needs to be banked. if expected_rows is None: report.setdefault("notes", []).append( - f"{band}: relevance_rows not banked yet (observed {observed_rows}); " + f"{type_name}: relevance_rows not banked yet (observed {observed_rows}); " "commit that value to baselines.json after a deliberate measurement run" ) + # If an expected count exists but the new benchmark produced a different + # number of relevance rows, treat this as a correctness/semantic failure. elif observed_rows != expected_rows: failures.append( - f"{band}: relevance_rows mismatch — expected {expected_rows}, " + f"{type_name}: relevance_rows mismatch — expected {expected_rows}, " f"got {observed_rows} (semantics change; hard fail)" ) - + # Get the maximum allowed reasoning time for this benchmark type. reason_max = bank.get("reason_s_max") + # Get the median reasoning time measured in the current benchmark runs. observed_reason = report["medians"]["reason_s"] + # If no performance threshold has been saved yet, + # do not fail the benchmark. Add a note saying a threshold must be established. if reason_max is None: - # Timing threshold not banked yet — do not fail the job on speed. report.setdefault("notes", []).append( - f"{band}: reason_s_max not banked; median reason_s={observed_reason:.4f}s " + f"{type_name}: reason_s_max not banked; median reason_s={observed_reason:.4f}s " "(record after 3× workflow_dispatch, threshold = 2× worst median)" ) + # If the measured median reasoning time exceeds the allowed maximum, + # record a performance-regression failure. elif observed_reason > reason_max: failures.append( - f"{band}: reason_s {observed_reason:.4f}s exceeds threshold " + f"{type_name}: reason_s {observed_reason:.4f}s exceeds threshold " f"{reason_max:.4f}s — may be a real regression or runner noise; " "re-run once before investigating" ) + # Return all failures found. + # Empty list [] means the benchmark passed these checks. return failures - def _parent_main(args) -> int: + """Run the full benchmark workflow in parent mode and return an exit code.""" + # Load the expected correctness and performance baselines + # from baselines.json. baselines = _load_baselines(args.baselines) + # Stop immediately if the GraphML fixture file does not exist. if not args.fixture.exists(): raise SystemExit(f"fixture not found: {args.fixture}") + # Stop immediately if the customer seed JSON file does not exist. if not args.customers.exists(): raise SystemExit(f"customers not found: {args.customers}") - + # Run one untimed child process first unless warmup was explicitly skipped. + # This helps keep first-run compilation/cache effects out of measured runs. if not args.skip_warmup: _spawn_child(args, warmup=True) - + # Store the result dictionary from each timed child process. runs = [] + # Launch the requested number of fresh timed child processes. for i in range(args.repeats): + # Print progress such as "timed run 1/3". print(f" timed run {i + 1}/{args.repeats}", flush=True) + # Run one benchmark measurement in a fresh child process + # and save its returned timing/correctness data. runs.append(_spawn_child(args, warmup=False)) - + # Build the final benchmark report using all measured runs. report = { - "band": args.band, + # Record which benchmark type was executed. + "type": args.type, + # Record which GraphML fixture was used. "fixture": str(args.fixture), + # Record which customer seed file was used. "customers": str(args.customers), + # Record how many timed benchmark runs were performed. "repeats": args.repeats, + # Store the complete raw result from every timed child. "runs": runs, + # Calculate one representative median value for each metric. "medians": { + # Median PyReason import time across all measured runs. "import_s": _median([r["import_s"] for r in runs]), + # Median graph/rule/fact setup time. "setup_s": _median([r["setup_s"] for r in runs]), + # Median actual reasoning time. + # This is the main performance metric. "reason_s": _median([r["reason_s"] for r in runs]), - "relevance_rows": int(statistics.median([r["relevance_rows"] for r in runs])), + # Median final relevance-row count. + # Normally every run should already have exactly the same count. + "relevance_rows": int( + statistics.median( + [r["relevance_rows"] for r in runs] + ) + ), }, - "python": runs[0]["python"] if runs else sys.version.split()[0], - "pyreason": runs[0].get("pyreason", "unknown") if runs else "unknown", + # Record the Python version used by the child processes. + # If no runs somehow exist, fall back to the parent Python version. + "python": ( + runs[0]["python"] + if runs + else sys.version.split()[0] + ), + # Record the PyReason version reported by the first child. + # If unavailable, use "unknown". + "pyreason": ( + runs[0].get("pyreason", "unknown") + if runs + else "unknown" + ), + # Start with an empty list for informational notes. "notes": [], } - - # All repeats must agree on relevance_rows (determinism). + # Collect all distinct relevance-row counts returned by the repeated runs. + # Example: {1573} means every run agreed. row_set = {r["relevance_rows"] for r in runs} + # If more than one different relevance-row count exists, + # note that the benchmark was not deterministic. if len(row_set) != 1: - report["notes"].append(f"relevance_rows disagreed across runs: {sorted(row_set)}") - - failures = _evaluate(args.band, report, baselines) - # Also fail if repeats disagreed on rows. + report["notes"].append( + f"relevance_rows disagreed across runs: {sorted(row_set)}" + ) + # Compare the median benchmark results against the saved baselines. + # This checks both correctness and performance. + failures = _evaluate( + args.type, + report, + baselines + ) + # Independently fail the benchmark if repeated runs produced + # different relevance-row counts. if len(row_set) != 1: - failures.append(f"non-deterministic relevance_rows across repeats: {sorted(row_set)}") - + failures.append( + f"non-deterministic relevance_rows across repeats: " + f"{sorted(row_set)}" + ) + # The benchmark passes only when there are no failure messages. report["pass"] = len(failures) == 0 + # Store all failure messages in the final report. report["failures"] = failures - - args.out.parent.mkdir(parents=True, exist_ok=True) - args.out.write_text(json.dumps(report, indent=2) + "\n", encoding="utf-8") - + # Make sure the parent directory for the output report exists. + args.out.parent.mkdir( + parents=True, + exist_ok=True + ) + # Write the complete benchmark report to JSON. + args.out.write_text( + json.dumps(report, indent=2) + "\n", + encoding="utf-8" + ) + # Create a short alias to the median metrics for easier printing. med = report["medians"] + # Convert the boolean pass result into a readable status string. status = "PASS" if report["pass"] else "FAIL" + # Print a one-line benchmark summary. print( - f"{status} {args.band}: reason_s_med={med['reason_s']:.4f}s " - f"setup_s_med={med['setup_s']:.4f}s import_s_med={med['import_s']:.4f}s " - f"relevance_rows={med['relevance_rows']} → {args.out}" + f"{status} {args.type}: " + f"reason_s_med={med['reason_s']:.4f}s " + f"setup_s_med={med['setup_s']:.4f}s " + f"import_s_med={med['import_s']:.4f}s " + f"relevance_rows={med['relevance_rows']} " + f"→ {args.out}" ) + # Print any informational notes. for msg in report.get("notes", []): print(f"NOTE: {msg}") + # Print each failure message to stderr. for msg in failures: print(f"FAIL: {msg}", file=sys.stderr) + # Return exit code 0 when the benchmark passes. + # Return exit code 1 when it fails. + # GitHub Actions uses this exit code to decide whether the job is green or red. return 0 if report["pass"] else 1 - def main(argv=None) -> int: args = _parse_args(argv) if args.child: @@ -261,6 +470,5 @@ def main(argv=None) -> int: return 0 return _parent_main(args) - if __name__ == "__main__": raise SystemExit(main()) From a9de6567e2a3cbfbefa5c5a5b34a5271b2d34a60 Mon Sep 17 00:00:00 2001 From: BAF1927 Date: Wed, 19 Aug 2026 10:09:24 -0400 Subject: [PATCH 7/9] Fixed accidental function deletion --- benchmarks/pokec/run_bench.py | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/benchmarks/pokec/run_bench.py b/benchmarks/pokec/run_bench.py index b43c0b85..57b22743 100644 --- a/benchmarks/pokec/run_bench.py +++ b/benchmarks/pokec/run_bench.py @@ -280,6 +280,13 @@ def _median(xs): return float(statistics.median(xs)) if xs else None +def _load_baselines(path: Path) -> dict: + """Read baselines.json and return it as a dictionary.""" + if not path.exists(): + raise SystemExit(f"baselines file not found: {path}") + return json.loads(path.read_text(encoding="utf-8")) + + def _evaluate(type_name: str, report: dict, baselines: dict) -> list[str]: """Compare benchmark results against expected baselines and return any failures.""" # Store any correctness or performance failures found during evaluation. From 6a274af3318c6c340780f70d12b9004be6f60a18 Mon Sep 17 00:00:00 2001 From: Colton Date: Mon, 24 Aug 2026 09:40:09 -0400 Subject: [PATCH 8/9] perf CI: gate both sizes on every PR, ship fixtures in-repo Make the perf workflow's behavior deliberate instead of incidental, and cut its dependency on an external host. Gating - Both jobs now carry symmetric conditions whose only filter is the workflow_dispatch size selector. pokec-10k already ran on every PR, but via an `if:` whose first clause short-circuits true for all non-dispatch events -- accidental, and left over from 25fe35a ("FOR TESTING"). pokec-2k was additionally excluded from the nightly cron for no stated reason. - The two sizes run as parallel jobs, so the gate costs the longer of them (~11 min), while python-package-version-test.yml on the same PR takes 29-35 min. Perf is never the critical path, and runner minutes are free on public repos, so 2k rides along at no wall-clock cost. - 10k goes to --repeats 3, matching 2k, so its median is measured the same way the banked baseline was. - Timeouts drop from 45/300 min to 20/30 min: real ceilings with ~3x headroom rather than placeholders that would let a hung job burn five hours. - Add concurrency cancel-in-progress for pull_request only, so superseded PR runs stop while main and nightly history stays complete. Fixtures - Commit both fixtures gzipped (76 KB + 509 KB) and gunzip them in CI. This removes the actions/cache steps and the two curl calls to snap.stanford.edu: no cold-miss download, no third-party outage in the gate's path, and fork PRs -- which cannot write to the Actions cache -- behave like branch PRs. - Regenerated from the SNAP dumps with the current generate_fixtures.py. The 2k GraphML is byte-identical to the one previously committed at 25fe35a; the 10k has never been in git before. Both match the documented reference counts (2k: 18,315 friend / 1,203 hasPet / 5 customers; 10k: 121,716 / 6,204 / 14). - Compressing with the no-timestamp flag keeps the archives byte-reproducible from identical GraphML. - .gitignore now excludes only the unpacked .graphml build artifact. README: describe the gate as intended, document why both sizes run per PR, why LFS is the wrong tool at this size, and how to regenerate. --- .github/workflows/perf.yml | 60 ++++++------------ .gitignore | 6 +- benchmarks/pokec/README.md | 47 ++++++++++++-- .../pokec/fixtures/pokec-10k-customers.json | 16 +++++ .../pokec/fixtures/pokec-10k.graphml.gz | Bin 0 -> 520880 bytes .../pokec/fixtures/pokec-2k-customers.json | 7 ++ benchmarks/pokec/fixtures/pokec-2k.graphml.gz | Bin 0 -> 76745 bytes 7 files changed, 88 insertions(+), 48 deletions(-) create mode 100644 benchmarks/pokec/fixtures/pokec-10k-customers.json create mode 100644 benchmarks/pokec/fixtures/pokec-10k.graphml.gz create mode 100644 benchmarks/pokec/fixtures/pokec-2k-customers.json create mode 100644 benchmarks/pokec/fixtures/pokec-2k.graphml.gz diff --git a/.github/workflows/perf.yml b/.github/workflows/perf.yml index c6bfa17f..47529e62 100644 --- a/.github/workflows/perf.yml +++ b/.github/workflows/perf.yml @@ -5,6 +5,8 @@ on: push: branches: [main] schedule: + # Nightly drift check on main: catches regressions from runner image or + # dependency changes that no PR would surface. - cron: "17 6 * * *" workflow_dispatch: inputs: @@ -17,15 +19,23 @@ on: - 2k - 10k +# A new push to a PR makes the in-flight perf run obsolete; cancel it. +# Runs on main and nightly runs are kept so the baseline history stays complete. +concurrency: + group: perf-${{ github.ref }} + cancel-in-progress: ${{ github.event_name == 'pull_request' }} + jobs: + # Both sizes run on every PR. They run as parallel jobs and together finish + # well inside the functional suite's runtime, so the gate adds no PR latency. + # The only filter is the manual-dispatch size selector. pokec-2k: if: > - github.event_name != 'schedule' && - (github.event_name != 'workflow_dispatch' || - github.event.inputs.type == '2k' || - github.event.inputs.type == 'both') + github.event_name != 'workflow_dispatch' || + github.event.inputs.type == '2k' || + github.event.inputs.type == 'both' runs-on: ubuntu-latest - timeout-minutes: 45 + timeout-minutes: 20 steps: - uses: actions/checkout@v4 - uses: actions/setup-python@v5 @@ -35,22 +45,8 @@ jobs: run: | python -m pip install --upgrade pip pip install . - - name: Restore 2k fixture - id: fixture-cache - uses: actions/cache@v4 - with: - path: benchmarks/pokec/fixtures/pokec-2k* - key: pokec-2k-fixture-${{ hashFiles('benchmarks/pokec/generate_fixtures.py') }} - - name: Generate 2k fixture (cache miss only) - if: steps.fixture-cache.outputs.cache-hit != 'true' - run: | - mkdir -p benchmarks/pokec/data - curl -sSf -o benchmarks/pokec/data/soc-pokec-relationships.txt.gz \ - https://snap.stanford.edu/data/soc-pokec-relationships.txt.gz - curl -sSf -o benchmarks/pokec/data/soc-pokec-profiles.txt.gz \ - https://snap.stanford.edu/data/soc-pokec-profiles.txt.gz - python benchmarks/pokec/generate_fixtures.py \ - --data-dir benchmarks/pokec/data --size 2k --write + - name: Unpack 2k fixture + run: gunzip -kf benchmarks/pokec/fixtures/pokec-2k.graphml.gz - name: Pokec 2k bench run: | python benchmarks/pokec/run_bench.py \ @@ -69,7 +65,7 @@ jobs: github.event.inputs.type == '10k' || github.event.inputs.type == 'both' runs-on: ubuntu-latest - timeout-minutes: 300 + timeout-minutes: 30 steps: - uses: actions/checkout@v4 - uses: actions/setup-python@v5 @@ -79,28 +75,14 @@ jobs: run: | python -m pip install --upgrade pip pip install . - - name: Restore 10k fixture - id: fixture-cache - uses: actions/cache@v4 - with: - path: benchmarks/pokec/fixtures/pokec-10k* - key: pokec-10k-fixture-${{ hashFiles('benchmarks/pokec/generate_fixtures.py') }} - - name: Generate 10k fixture (cache miss only) - if: steps.fixture-cache.outputs.cache-hit != 'true' - run: | - mkdir -p benchmarks/pokec/data - curl -sSf -o benchmarks/pokec/data/soc-pokec-relationships.txt.gz \ - https://snap.stanford.edu/data/soc-pokec-relationships.txt.gz - curl -sSf -o benchmarks/pokec/data/soc-pokec-profiles.txt.gz \ - https://snap.stanford.edu/data/soc-pokec-profiles.txt.gz - python benchmarks/pokec/generate_fixtures.py \ - --data-dir benchmarks/pokec/data --size 10k --write + - name: Unpack 10k fixture + run: gunzip -kf benchmarks/pokec/fixtures/pokec-10k.graphml.gz - name: Pokec 10k bench run: | python benchmarks/pokec/run_bench.py \ --fixture benchmarks/pokec/fixtures/pokec-10k.graphml \ --customers benchmarks/pokec/fixtures/pokec-10k-customers.json \ - --repeats 1 --type pokec-10k --out pokec-10k-report.json + --repeats 3 --type pokec-10k --out pokec-10k-report.json - uses: actions/upload-artifact@v4 if: always() with: diff --git a/.gitignore b/.gitignore index d04d1dad..9253eb26 100755 --- a/.gitignore +++ b/.gitignore @@ -176,8 +176,8 @@ cython_debug/ # Sphinx Documentation /docs/source/_static/css/fonts/ -# Pokec SNAP dumps and generated fixtures (built in CI from SNAP; do not commit) +# Local SNAP dumps used only to regenerate fixtures; never committed. benchmarks/pokec/data/ -benchmarks/pokec/fixtures/pokec-2k* -benchmarks/pokec/fixtures/pokec-10k* +# Fixtures ship gzipped; the unpacked GraphML is a build artifact. +benchmarks/pokec/fixtures/*.graphml *-report.json diff --git a/benchmarks/pokec/README.md b/benchmarks/pokec/README.md index 32ac2a53..5af240e3 100644 --- a/benchmarks/pokec/README.md +++ b/benchmarks/pokec/README.md @@ -11,13 +11,20 @@ no self-hosted runners. | `generate_fixtures.py` | Deterministic fixture builder from SNAP dumps | | `run_bench.py` | Fresh-process runner; times import / setup / reason | | `baselines.json` | Banked `relevance_rows` + `reason_s_max` thresholds | -| `fixtures/pokec-2k.*` | Generated in CI on cache miss; **not** committed | -| `fixtures/pokec-10k.*` | Generated in CI on cache miss; **not** committed | -| `data/` | Local SNAP downloads; gitignored | +| `fixtures/pokec-2k.graphml.gz` | Committed fixture, gzipped (75 KB) | +| `fixtures/pokec-10k.graphml.gz` | Committed fixture, gzipped (509 KB) | +| `fixtures/pokec-*-customers.json` | Committed customer id lists | +| `data/` | Local SNAP dumps, needed only to regenerate; gitignored | ## Dataset (do not commit) -Download once into `benchmarks/pokec/data/`: +The fixtures are committed gzipped, so **neither CI nor a normal checkout needs +the SNAP dumps** — CI just gunzips them. Both archives together are under +600 KB, small enough to live in git directly; Git LFS would be the wrong tool +at this size and would bill clone bandwidth to the repo owner. + +You only need the raw dumps to *regenerate* a fixture (spec change, new size). +Download once into `benchmarks/pokec/data/` (~570 MB, gitignored): - https://snap.stanford.edu/data/soc-pokec-relationships.txt.gz - https://snap.stanford.edu/data/soc-pokec-profiles.txt.gz @@ -32,8 +39,16 @@ python benchmarks/pokec/generate_fixtures.py \ python benchmarks/pokec/generate_fixtures.py \ --data-dir benchmarks/pokec/data --size 10k --write + +# Re-compress for commit. -n omits the timestamp so the archive is +# byte-reproducible from identical GraphML. +gzip -9 -n -kf benchmarks/pokec/fixtures/pokec-{2k,10k}.graphml ``` +The generator asserts the reference counts below, so a run that completes +without an AssertionError has produced a correct fixture. The unpacked +`.graphml` is gitignored; commit only the `.gz`. + Spec (must match exactly for the verified 10k cross-check): - Size = N smallest profile user ids; keep edges with both ends kept. @@ -72,8 +87,28 @@ Banked on `ubuntu-latest` (3 Actions medians per type; cap = 2× worst median): | Job | When | Notes | |-----|------|-------| -| `pokec-2k` | every PR / push to main / manual | SNAP download only on cache miss; 45 min timeout | -| `pokec-10k` | every PR / push to main / nightly / manual | SNAP download only on cache miss; 300 min timeout | +| `pokec-2k` | every PR / push to main / nightly / manual | 3 repeats; ~7 min; 20 min timeout | +| `pokec-10k` | every PR / push to main / nightly / manual | 3 repeats; ~11 min; 30 min timeout | + +**Both sizes gate every PR, by design.** They run as two parallel jobs, so the +gate costs the longer of the two (~11 min) rather than their sum — and the +existing `python-package-version-test.yml` suite takes 29–35 min on the same +PR. Perf therefore adds **zero** PR latency: it is never the critical path. +Runner minutes are free on public repos, so wall clock is the only budget that +matters here, and 2k is effectively free alongside 10k. + +Roughly 320 s of each job is size-independent Numba compilation in the warmup +child. That is why 2k is not much cheaper than 10k, and why merging the two +jobs to share one warmup would *raise* wall clock by serializing them. + +`workflow_dispatch` takes a `type` input (`2k` / `10k` / `both`) to run a +single size manually; every other trigger runs both. The nightly cron is kept +as a drift check against runner-image and dependency changes that no PR would +surface. + +Fixtures are unpacked from the committed `.gz` files, so CI never contacts +`snap.stanford.edu` — no cache step, no cold-miss download, and fork PRs +(which cannot write to the Actions cache) behave identically to branch PRs. Existing `python-package-version-test.yml` / `python-publish.yml` are untouched. diff --git a/benchmarks/pokec/fixtures/pokec-10k-customers.json b/benchmarks/pokec/fixtures/pokec-10k-customers.json new file mode 100644 index 00000000..4eace3e2 --- /dev/null +++ b/benchmarks/pokec/fixtures/pokec-10k-customers.json @@ -0,0 +1,16 @@ +[ + 1, + 696, + 1377, + 2154, + 2819, + 3574, + 4340, + 5083, + 5845, + 6527, + 7192, + 7879, + 8629, + 9304 +] diff --git a/benchmarks/pokec/fixtures/pokec-10k.graphml.gz b/benchmarks/pokec/fixtures/pokec-10k.graphml.gz new file mode 100644 index 0000000000000000000000000000000000000000..3f29ec6b3c5b1cb68c6362a5f0a929bbe29d9109 GIT binary patch literal 520880 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%0D02fN{GL6g~HiRTYCu^A5sh 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�JZcKK-d?ph#*XB*T!{kQ{bDrFxy7&iN9k?uR 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 Date: Mon, 24 Aug 2026 09:53:34 -0400 Subject: [PATCH 9/9] perf CI: install editable, harden run_bench argument handling Follow-up on review notes that survived the previous commit. Editable install - The perf jobs installed the package non-editable, but run_bench.py's _spawn_child prepends the repo root to the child's PYTHONPATH, so the child always imports the checkout. The site-packages copy was never imported -- confirmed locally where site-packages held 3.5.1 while the checkout was 3.6.0 and the child still resolved to the checkout. Switching to -e removes the discrepancy and states that the checkout is what gets measured, which is the correct thing for a perf gate to measure. run_bench.py - Reject --repeats below 1 in the parent. Previously it reached statistics.median on an empty list and raised StatisticsError, which named neither the flag nor the cause. - A child that exits 0 having printed nothing now fails with that sentence rather than a bare IndexError from splitlines()[-1]. Both run_bench.py paths were unreachable in CI; they only bite someone driving the script by hand. Two earlier notes are moot: restore-keys, because the actions/cache steps and the SNAP downloads are gone, and cancel-in-progress, which the previous commit added. A paths: filter is deliberately not added -- see the README. --- .github/workflows/perf.yml | 12 ++++++++++-- benchmarks/pokec/README.md | 13 +++++++++++++ benchmarks/pokec/run_bench.py | 20 +++++++++++++++++--- 3 files changed, 40 insertions(+), 5 deletions(-) diff --git a/.github/workflows/perf.yml b/.github/workflows/perf.yml index 47529e62..34f3fbdd 100644 --- a/.github/workflows/perf.yml +++ b/.github/workflows/perf.yml @@ -42,9 +42,13 @@ jobs: with: python-version: "3.10" - name: Install package + # Editable on purpose. run_bench.py's child prepends the repo root to + # PYTHONPATH, so the code under measurement is the checkout either way; + # a non-editable install just leaves a never-imported copy in + # site-packages. -e says what is actually being benchmarked. run: | python -m pip install --upgrade pip - pip install . + pip install -e . - name: Unpack 2k fixture run: gunzip -kf benchmarks/pokec/fixtures/pokec-2k.graphml.gz - name: Pokec 2k bench @@ -72,9 +76,13 @@ jobs: with: python-version: "3.10" - name: Install package + # Editable on purpose. run_bench.py's child prepends the repo root to + # PYTHONPATH, so the code under measurement is the checkout either way; + # a non-editable install just leaves a never-imported copy in + # site-packages. -e says what is actually being benchmarked. run: | python -m pip install --upgrade pip - pip install . + pip install -e . - name: Unpack 10k fixture run: gunzip -kf benchmarks/pokec/fixtures/pokec-10k.graphml.gz - name: Pokec 10k bench diff --git a/benchmarks/pokec/README.md b/benchmarks/pokec/README.md index 5af240e3..527c5f1a 100644 --- a/benchmarks/pokec/README.md +++ b/benchmarks/pokec/README.md @@ -110,6 +110,19 @@ Fixtures are unpacked from the committed `.gz` files, so CI never contacts `snap.stanford.edu` — no cache step, no cold-miss download, and fork PRs (which cannot write to the Actions cache) behave identically to branch PRs. +There is deliberately **no `paths:` filter**. A perf number depends on more +than it looks like it does — the engine, the benchmark harness, the fixtures, +the workflow, and the pinned dependencies in `setup.py` — and a filter that +misses one of those turns a real regression into a job that silently never +ran. Since perf is off the critical path and runner minutes are free, a filter +would buy no wall clock and no money in exchange for that gap. A docs-only PR +running the bench is the cheap side of the trade. + +The jobs install the package **editable**. `run_bench.py` prepends the repo +root to each child's `PYTHONPATH`, so the checkout is what gets imported and +measured regardless; `-e` makes that explicit instead of leaving an unused +copy in `site-packages`. + Existing `python-package-version-test.yml` / `python-publish.yml` are untouched. ## Re-banking baselines diff --git a/benchmarks/pokec/run_bench.py b/benchmarks/pokec/run_bench.py index 57b22743..71acb2e6 100644 --- a/benchmarks/pokec/run_bench.py +++ b/benchmarks/pokec/run_bench.py @@ -94,8 +94,15 @@ def _parse_args(argv=None): action="store_true", help="Skip the untimed warmup child (debug only)", ) - # Parse the supplied arguments and return them as an argparse Namespace. - return p.parse_args(argv) + # Parse the supplied arguments into an argparse Namespace. + args = p.parse_args(argv) + # A parent run with no timed repeats has no median to compare against the + # baseline. Reject it here rather than failing later inside statistics.median + # on an empty list, which reports nothing about the actual mistake. + if not args.child and args.repeats < 1: + p.error("--repeats must be at least 1") + # Return the validated arguments. + return args def _run_program(fixture: Path, customers_path: Path) -> dict: @@ -269,7 +276,14 @@ def _spawn_child(args, warmup: bool = False) -> dict: ) # The child prints its result as JSON to stdout. # Take the final output line in case PyReason printed extra text first. - line = proc.stdout.strip().splitlines()[-1] + lines = proc.stdout.strip().splitlines() + # A child that exits 0 while printing nothing means the JSON handoff broke. + # Name that failure instead of surfacing a bare IndexError on [-1]. + if not lines: + raise SystemExit( + "child exited 0 but wrote no JSON result to stdout" + ) + line = lines[-1] # Convert the JSON string back into a Python dictionary # and return the child's benchmark result to the parent. return json.loads(line)